Lógica Computacional: Una perspectiva funcional con Python

Autores/as

Abdiel Emilio Cáceres González
Universidad Juárez Autónoma de Tabasco

Palabras clave:

Matemáticas Aplicadas, Applied Mathematics, Lógica Computacional, Computational Logic, Cálculo Lambda, Lambda Calculus, Compuertas Lógicas, Logic Gates, Lógica Proposicional, Propositional Logic, Programación de Computadoras, Computer Programming, Lenguaje Python, Python Language, Python

Sinopsis

Lógica Computacional es una disciplina obligatoria en las Ciencias Computacionales. En este libro se ofrece un amplio conjunto de definiciones que cubren diversos temas de cálculo proposicional; cómputo de predicados y algunas de las aplicaciones de la lógica computacional. Todos los conceptos incluidos en el libro cuentan con una definición, ya sea en el lenguaje de matemáticas, en el lenguaje de programación Python, o incluso ambos. Para estudiar con este libro se requiere un nivel mínimo de conocimientos de programación, por lo que es accesible para personas con el interés de aplicar este lenguaje en temas matemáticos.
Se ha seleccionado Python por diversas razones, entre ellas, porque es un lenguaje de propósito general y multiparadigma. Escribir las definiciones matemáticas usando Python, ayuda a cerrar la brecha entre programadores y matemáticos, acercando a los programadores a la formalidad y abstracción matemática; por otro lado, acerca a los matemáticos a la efectividad y eficiencia computacional.

 

Computational Logic: A functional perspective with Python

Computational Logic is a compulsory discipline in Computer Science. This book offers a broad set of definitions covering various topics of propositional calculus; predicate computation and some of the applications of computational logic. All the concepts included in the book have a definition, either in the language of mathematics, in the Python programming language, or even both. To study with this book a minimum level of programming knowledge is required, so it is accessible to people with an interest in applying this language in mathematical topics.

Python has been selected for several reasons, including because it is a general-purpose and multi-paradigm language. Writing mathematical definitions using Python helps to close the gap between programmers and mathematicians, bringing programmers closer to mathematical formality and abstraction; on the other hand, it brings mathematicians closer to computational effectiveness and efficiency.

Descargas

Los datos de descarga aún no están disponibles.

Biografía del autor/a

Abdiel Emilio Cáceres González, Universidad Juárez Autónoma de Tabasco

Nació en la Ciudad de México. Es Licenciado en Computación por la Universidad Juárez Autónoma de Tabasco. Maestro en Ciencias en Ingeniería Eléctrica con opción en Computación por el  Centro de Investigación y de Estudios Avanzados del Instituto Politécnico Nacional, Doctor en Ciencias en Ingeniería Eléctrica con opción en Computación por el  Centro de Investigación y de Estudios Avanzados del Instituto Politécnico Nacional. 

Es autor del libro "Lenguajes y Autómatas: Una perspectiva funcional con Racket" (2019) Ed. UJAT.

 

Born in Mexico City. He holds a degree in Computer Science from the Universidad Juárez Autónoma de Tabasco. A Master degree of Science in Electrical Engineering with an option in Computer Science from the Centro de Investigación y de Estudios Avanzados del Instituto Politécnico Nacional. Doctorate of Science in Electrical Engineering with an option in Computer Science from the Centro de Investigación y de Estudios Avanzados del Instituto Politécnico Nacional.

He is the author of the book "Languages ​​and Automata: A functional perspective with Racket" (2019) Ed. UJAT.

Referencias

Aranda Almansa, J. (2006).Fundamentos de Lógica Matemática y Computación Sanz y Torres.

Arnaz, J. A. (1989).Iniciación a la Lógica Simbólica. Temas básicos: Metodología de la Ciencia (3ra ed.). Trillas.

Bustamante Arias, A. (2009). Lógica y Argumentación: De los Argumentos Inductivos a las Álgebras de Boole Pearson Educación México.

Bocheński, J. M. (1968). Historia de la Lógica Formal Gredos Ed.

Boole, G. (1948). The Mathematical Analysis of Logic: Being an Essay Towards A Calculus of Deductive Reasoning Philosophical Library Inc.

Brown, S., & Vranesic, Z. (1990). Fundamentals of Digital Logic with VHDL Design(3ra ed.). McGraw-Hill.

Conradie, W., & Goranko, V. (2015). Logic and Discrete Mathematics: A Concise Introduction Wiley & Sons, Limited, John.

Church, A. (1932). A Set of Postulates for the Foundation of Logic. Annals of Mathematics, Second Series, 33 (2), 346-366.

Church, A. (1941). The Calculi of Lambda Conversion, Princeton University Press.

Camacho Naranjo, L. (2002).Introducción a la Lógica Libro Universitario Regional.

Curry, H. B. (1929). An Analysis of Logical Substitution. American Journal of Mathematics, 51, 363.

Curry, H. B. (1934). Functionality in Combinatory Logic. Proceedings of the National Academy of Sciences of the United States of America, 20(11), 584-590.

Curry, H. B. (1977). Foundations of Mathematical Logic (Edición de Dover). Dover Publications, Incorporated.

Davis, M. (1973). Hilbert’s tenth problem is unsolvable. The American Mathematical Monthly, 80 (3), 233-269.

Domínguez García, M. N. (2006). Conectores Discursivos en Textos Argumentativos Breves Arco Libros - La Muralla, S.L.

De Morgan, A. (1947). Formal Logic: The Calculus of Inference, Necessary and Probable Taylor & Walton Eds.

De Olaso, E. (Ed.). (1982). G. W. Leibniz, Escritos Filosóficos Biblioteca de Filosofía. Charcas Ed.

Detlovs, V., & Podnieks, K. (2017). Introduction to Mathematical Logic, OpenLibra.

Floyd, R. W. (1967). Assigning Meanings to Programs. In J. T. Schwartz (Ed.), Mathematical Aspects of Computer Science (Vol. XIX, pp. 19-32). American Mathematical Society, Providence, Rhode Island.

Fuentes Rodríguez, C. (2009). Diccionario de Conectores y Operadores del Español Editorial Arco Libros.

Grässle, P., Baumann, H., & Baumann, P. (2005). UML 2.0 in Action: A Project Based Tutorial PACKT Publishing.

Gentzen, G. (1933). Über die Existenz unabhängiger Axiomensysteme zu unendlichen Satzsystemen.Mathematische Annalen 107 (1), 329-350.

Gentzen, G. (1964). Investigations into Logical Deduction. American Philosophical Quarterly, 1 (4), 288-306.

Harrison, J. (2009). Handbook of Practical Logic and Automated Reasoning, Cambridge University Press.

Harris, D. M., & Harris, S. L. (2012). Digital Design and Computer Architecture(2da, ed.). Elsevier.

Hilbert, D. (1902). Mathematical Problems. Bulletin of the American Mathematical Society, 8(10), 437-479.

Hoare, C. A. R. (1969). An axiomatic basis for computer programming. Communications of the ACM 576-580.

Jensen, K. (Ed.) (1991). Pascal User Manual and Report(4ta ed.). Springer New York.

Karnaugh, M. (1953). The Map Method for Synthesis of Combinational Logic Circuits. Transactions of the American Institute of Electrical Engineers, Part I: Communication and Electronics, 72(5), 593-599.

Katz, R. H., & Borriello, G. (2005). Contemporary Logic Design(2da ed.). Pearson.

Kleene, S. C. (1936). λ-definability and recursiveness.Duke Mathematical Journal, 2(2), 340-353.

Kleene, S. C. (1981). The Theory of Recursive Functions, Approaching its Centennial. Bulletin (New Series) of the American Mathematical Society, 5(1), 43-61.

Logo Foundation. (2015). Logo history. Logo Foundation Web Page Retrieved from https://el.media.mit.edu/logo-foundation/what_is_logo/history.html

MacLennan, B. J. (1999). Principles of programming languages: Design, evaluation, and implementation (3ra ed.). Oxford University Press.

Matijasevič, J. V. (1993). Hilbert’s tenth problem, Foundations of computing. The MIT Press.

Mano, M. M., & Ciletti, M. D. (2007). Digital Design(4ta ed.). Pearson Prentice Hall.

Meyer, B. (1990). Introduction to the Theory of Programming Languages, Prentice-hall International Series in Computer Science. Prentice Hall.

Markov, A. A., & Nagorny, N. M. (1988). The Theory of Algorithms, Kluwer Academic Publishers.

Muñoz Rincón, D. L. (2018). ¿Qué son, cuál es el uso y cómo se clasifican los conectores? Palabras en Orden (Blog). Retrieved from https://www.upb.edu.co/es/central-blogs/ortografia/como-se-clasifican-conectores

Naur, P. (1966). Proof of Algorithms by General Snapshots. BIT 6, 310-316.

Newborn, M. (2000). Automated Theorem Proving, Springer.

OMG. (2017). Unified Modeling Language (UML), Version 2.5.1

RAE. (2010). Manual de la Nueva Gramática de la lengua española Nuevas Obras Real Academia. Espasa.

Roggenbach, M., Cerone, A., Schlingloff, B.-H., Schneider, G., & Shaikh, S. A. (2022). Formal Methods for Software Engineering: Languages, Methods, Application Domains, Springer.

Ritchie, D. M. (1996). The development of the C programming language. Association for Computing Machinery, 671-698.

Roth, C. H., & Kinney, L. L. (2004). Fundamentals of Logic Design(5ta ed.). Thomson Learning.

Raj, M., & Das, B. N. (2017). Learn Python in 7 days, Packt Publishing.

Rosen, K. H. (2004).Matemática Discreta y sus Aplicaciones(5ta ed.). McGraw-Hill/Interamericana de España, S.A. U.

Reiser, M., & Wirth, N. (1994). Programming in Oberon(Reimpresión). ACM Pr.

Suppes, P., & Hill, S. (1986).Introducción a la Lógica Matemática Editorial Reverté.

Solomon, C., Harvey, B., Kahn, K., Lieberman, H., Miller, M., Minsky, M., Papert, A., & Silverman, B. (2020). History of logo. Proceedings of the ACM on Programming Languages, 4, 1-66.

Simons, P. (2021). Jan Łukasiewicz > Łukasiewicz’s Parenthesis-Free or Polish Notation. Retrieved from https://plato.stanford.edu/entries/lukasiewicz/polish-notation.html

Slonneger, K., & Kurtz, B. L. (1995). Formal Syntax and Semantics of Programming Languages: A Laboratory Based Approach Addison-Wesley Publishing Company.

Thompson, K. (1972). Users’ Reference to B. Bell Telephone Laboratories, 39199 (11).

Trelles Montero, Ó., & Rosales Papa, D. (2000).Introducción a la Lógica (2da, ed.). Pontificia Universidad Católica del Perú. Fondo Editorial.

Turing, A. M. (1936). On Computable Numbers, with an Application to the Entscheidungsproblem. Proceedings of the London Mathematical Society, 2(42), 230-265.

Turing, A. M. (1950). Computing Machinery and Intelligence. Mind 59(236), 433-460.

Von Neumann, J. (1958). The Computer and the Brain, Yale University Press.

Wakerly, J. F. (2006). Digital Design: Principles and Practices (4ta ed.). Prentice Hall.

Wiener, N. (1961). Cybernetics: Or control and communication in the animal and the machine (2da ed.). MIT University Press.

Wirth, N. (1971). The Programming Language Pascal. Acta Informatica, 1(1), 35-63.

Whitehead, A. N., & Russell, B. (1963). Principia Mathematica, Cambridge at the University Press.

Wijarnpreecha, K., Thongprayoon, C., Thamcharoen, N., Panadeekarn, P., & Cheungpasitporn, W. (2017). Association of Coffee Consumption and Chronic Kidney Disease: A Meta-analysis. International Journal of Clinical Practice 71 (e12919), e12919.

Zubiria, M., & Moral, J. J. (Eds.). (2016). El poema doctrinal de Paraménides Universidad Nacional de Cuyo.

Portada del libro "Lógica Computacional: Una perspectiva funcional con Python"

Descargas

Publicado

May 28, 2025

Categorías

Licencia

Creative Commons License

Esta obra está bajo una licencia internacional Creative Commons Atribución-NoComercial-SinDerivadas 4.0.

Detalles sobre esta monografía

ISBN-13 (15)

978-607-2628-56-4

Cómo citar

Cáceres González, A. E. (2025). Lógica Computacional: Una perspectiva funcional con Python. Universidad Juárez Autónoma de Tabasco. https://doi.org/10.52501/ujat.002