Appendix a a Non-Linear Algebra: an Introduction to Boolean Algebra

Total Page:16

File Type:pdf, Size:1020Kb

Appendix a a Non-Linear Algebra: an Introduction to Boolean Algebra Appendix A A Non-linear Algebra: An Introduction to Boolean Algebra A.1 Basic Logical Gates This chapter is, strictly speaking, not about linear algebra. Nonetheless, the topic of this chapter, i.e. Boolean algebra, is related to linear algebra and it has been crucially important, over the last decades, for the progress of electronics. More specifically, while linear algebra deals with numbers, vectors, and matrices, Boolean algebra deals with binary states 0 and 1. In addition, the basic operators of Boolean algebra are non-linear. Furthermore, it must be remarked that Boolean algebra is related to linear algebra as it allows its implementation within digital circuits. Thus, Boolean algebra can be seen as the “trait d’union” between abstract algebra and computational science. In order to introduce Boolean algebra, let us consider an object x and a set A.A membership function mf (x) scores 0 if x ∈/ A and1ifx ∈ A. At an abstract level, if we consider all the possible objects and sets of the universe, we can associate a membership relationship between each object and set. Each relationship will score 0 when the belonging relationship is not verified (the statement is false) and 1 when the belonging relationship is verified (the statement is true). We can think about an image space where only the true and false (or 1 and 0, respectively) are allowed. In this space, the variables, namely binary variables can be combined to generate a binary algebra, namely Boolean algebra. Since the latter has to obey to logical rules, the same subject can be seen from a different perspective and named Boolean logic. This name is due to George Boole, the English mathematician that in 1853 described this logic in his book, “An Investigation of the Laws of Thought”, see [30]. As mentioned above, in Boolean algebra, a variable x can take either the value 0 or 1. Thus, x is a generic variable of a binary set B = {0, 1}. Three elementary operators (or basic logical gates), one of them unary (that is applied to only one variable) and two of them binary (that is applied to two variables) are here introduced. The first operator, namely NOT, is defined in the following way: © Springer International Publishing Switzerland 2016 451 F. Neri, Linear Algebra for Computational Sciences and Engineering, DOI 10.1007/978-3-319-40341-0 452 Appendix A: A Non-linear Algebra: An Introduction to Boolean Algebra if x = 1 then x¯ = NOT (x) = 0 if x = 0 then x¯ = NOT (x) = 1 The NOT operators is also graphically represented by the following symbol. The second operator, namely AND or logical multiplication, processes two inputs, x and y respectively, and returns the values x ∧ y according to the following rules: x y x ∧ y 0 0 0 1 0 0 0 1 0 1 1 1 A graphical representation of the AND operator is given in the following way. The third operator, namely OR or logical sum, processes two inputs, x and y respectively, and returns the values x ∨ y according to the following rules: x y x ∨ y 0 0 0 1 0 1 0 1 1 1 1 1 A graphical representation of the OR operator is given in the following way. A.2 Properties of Boolean Algebra As for numerical linear algebra, the Boolean operators are characterized by basic properties. These properties are here listed. Appendix A: A Non-linear Algebra: An Introduction to Boolean Algebra 453 • neutral element for AND: ∀x binary number, x ∧ 1 = x • absorbing element for AND: ∀x binary number, x ∧ 0 = 0 • neutral element for OR: ∀x binary number, x ∨ 0 = x • absorbing element for OR: ∀x binary number, x ∨ 1 = 1 • commutativity with respect to AND: x ∧ y = y ∧ x • commutativity with respect to OR: x ∨ y = y ∨ x • distributivity 1: x ∧ (y ∨ z) = (x ∧ y) ∨ (x ∧ z) • distributivity 2: x ∨ (y ∧ z) = (x ∨ y) ∧ (x ∨ z) • identity property 1: x ∧ x = x • identity property 2: x ∨ x = x • negative property 1: x ∧¯x = 0 • negative property 2: x ∨¯x = 1 These basic properties, when combined, allow us to detect more complex rela- tionships, as shown in the following example. Theorem A.1 x ∧ (x ∨ y) = x Proof x ∧ (x ∨ y) = (x ∧ x) ∨ (x ∧ y) = x ∨ (x ∧ y) = x ∧ (1 + y) = x ∧ 1 = x. Important properties of Boolean algebra are the so-called De Morgan’s laws. Theorem A.2 (First De Morgan’s Law) The negation of a disjunction is the con- junction of the negations. (x ∨ y) =¯x ∧¯y Proof In order to prove the first De Morgan’s law, we consider that (x ∨ y) =¯x ∧¯y is equivalent to write that (x ∨ y) ∧ (x¯ ∧¯y) = 0 (for the negative property 1). The latter equation can be written as (x ∨ y) ∧ (x¯ ∧¯y) = ((x ∨ y) ∧¯x) ∧¯y = (0 ∨ (x¯ ∧ y)) ∧¯y =¯x ∧ y ∧¯y =¯x ∧ 0 = 0 Theorem A.3 (Second De Morgan’s Law) The negation of a conjunction is the disjunction of the negations. (x ∧ y) =¯x ∨¯y The second De Morgan’s Law can be proved in an analogous way. Example A.1 Let us consider the following expression (x ∨ y)∧(x ∨¯y). This expres- sion can be simplified. Let us re-write it: (x ∨ y) ∧ (x ∨¯y) = x ∨ x ∧¯y ∨ x ∧ y ∨ 0 = = x ∧ (1 ∨ y ∨¯y) = x ∧ (1 ∨ y) = x. 454 Appendix A: A Non-linear Algebra: An Introduction to Boolean Algebra A.3 Boolean Algebra in Algebraic Structures The abstract aspects of Boolean Algebra are very complex and deserves possibly a separate book. However, with the purpose of linking Boolean Algebra to the other chapters of this book, especially to place it within algebraic structures, this section introduces some other concepts of abstract algebra. Definition A.1 The algebraic structure composed of a set L endowed with two binary operators ∨ and ∧, respectively, is said lattice and indicated with (L, ∨, ∧).For lattices and x, y, z ∈ L, the following properties hold: • commutativity 1: x ∨ y = y ∨ x • commutativity 2: x ∧ y = y ∧ x • associativity 1: (x ∨ y) ∨ z = x ∨ (y ∨ z) • associativity 2: (x ∧ y) ∧ z = x ∧ (y ∧ z) • absorption 1: x ∨ (x ∧ y) • absorption 2: x ∧ (x ∨ y) • idempotence 1: a ∨ a = a • idempotence 2: a ∧ a = a Definition A.2 A lattice (L, ∨, land) is said to be bounded when 0 is the neutral element for ∨ (x ∨ 0 = x) and 1 is the neutral element for ∧ (x ∧ 1 = x). It can be observed that a lattice can be seen as the combination of two semigroups: (L, ∨) and (L, ∧) respectively. In the cases of bounded lattice, it is the combination of two monoids. Definition A.3 A lattice (L, ∨, land) is said to be complemented when it is bounded (with infimum equal to 0 and supremum equal to 1) and for all x ∈ L, there exists an element y such that x ∧ y = 0 and x ∨ y = 1. Definition A.4 A lattice (L, ∨, ∧) is said to be distributive when the following equality holds x ∧ (y ∨ z) = (x ∧ y) ∨ (x ∧ z) . The latter equality can be proved to be equivalent to x ∨ (y ∧ z) = (x ∨ y) ∧ (x ∨ z) . It can be easily seen that Boolean algebra is a complemented distributive lattice. Appendix A: A Non-linear Algebra: An Introduction to Boolean Algebra 455 A.4 Composed Boolean Gates From the three basic gates several composed gates can be generated. An important example is the NAND operator composed of an AND and a NOT and here represented. A more complex example is the XOR operator. This operator processes two inputs and returns 0 when the inputs are the same and 1 when they are different. x y x ∨ y 0 0 0 1 0 1 0 1 1 1 1 0 This operator is composed as x ∧¯y ∨¯x ∧ y. This expression is graphically repre- sented in the following way, or, more compactly as In order to appreciate the practical implications of Boolean logic and it composed gates, let us consider a so-called half adder circuit. The latter is a logic structure, obtained by a straightforward combination of XOR and AND gates, that performs sum. The scheme is given by: 456 Appendix A: A Non-linear Algebra: An Introduction to Boolean Algebra If we consider that S stands for sum while C stands for carry, the functioning of the half adder can be summarized in the following way. A more complex example is the XOR operator. This operator processes two inputs and returns 0 when the inputs are the same and 1 when they are different. x y C S 0 0 0 0 1 0 0 1 0 1 0 1 1 1 1 0 As shown the result of the operation 1 + 1 = 10 (where 10 is 2 in binary). Thus, the half adder is an elementary structure that can be used to perform sums. More generally, Boolean logic allows, by means of binary operator, to define a complex logic. This feature is relevant in computational devices where the physics imposes the employment of a binary logic at the hardware level. Without entering into the details of a computer hardware, it can be easily seen that it is easier to measure whether or not an amperage flows trough a conductor rather than measuring it intensity and associate a semantic value to it. In other words, in order to be reliable a computer hardware must be kept simple at the low level. Then these simple gates can be logically combined in billions of way in order to build a complex logic. As a further remark, Boolean logic was not defined to satisfy the necessities of a computational device since it was defined about one century earlier that the first computers.
Recommended publications
  • Semiring Frameworks and Algorithms for Shortest-Distance Problems
    Journal of Automata, Languages and Combinatorics u (v) w, x–y c Otto-von-Guericke-Universit¨at Magdeburg Semiring Frameworks and Algorithms for Shortest-Distance Problems Mehryar Mohri AT&T Labs – Research 180 Park Avenue, Rm E135 Florham Park, NJ 07932 e-mail: [email protected] ABSTRACT We define general algebraic frameworks for shortest-distance problems based on the structure of semirings. We give a generic algorithm for finding single-source shortest distances in a weighted directed graph when the weights satisfy the conditions of our general semiring framework. The same algorithm can be used to solve efficiently clas- sical shortest paths problems or to find the k-shortest distances in a directed graph. It can be used to solve single-source shortest-distance problems in weighted directed acyclic graphs over any semiring. We examine several semirings and describe some specific instances of our generic algorithms to illustrate their use and compare them with existing methods and algorithms. The proof of the soundness of all algorithms is given in detail, including their pseudocode and a full analysis of their running time complexity. Keywords: semirings, finite automata, shortest-paths algorithms, rational power series Classical shortest-paths problems in a weighted directed graph arise in various contexts. The problems divide into two related categories: single-source shortest- paths problems and all-pairs shortest-paths problems. The single-source shortest-path problem in a directed graph consists of determining the shortest path from a fixed source vertex s to all other vertices. The all-pairs shortest-distance problem is that of finding the shortest paths between all pairs of vertices of a graph.
    [Show full text]
  • 19 Theory of Computation
    19 Theory of Computation "You are about to embark on the study of a fascinating and important subject: the theory of computation. It com- prises the fundamental mathematical properties of computer hardware, software, and certain applications thereof. In studying this subject we seek to determine what can and cannot be computed, how quickly, with how much memory, and on which type of computational model." - Michael Sipser, "Introduction to the Theory of Computation", one of the driest computer science textbooks ever In which we go back to the basics with arcane, boring, and irrelevant set theory and counting. This week’s material is made challenging by two orthogonal issues. There’s a whole bunch of stuff to cover, and 95% of it isn’t the least bit interesting to a physical scientist. Nevertheless, being the starry-eyed optimist that I am, I’ll forge ahead through the mountainous bulk of knowledge. In other words, expect these notes to be long! But skim when necessary; if you look at the homework first (and haven’t entirely forgotten the lectures), you should be able to pick out the important parts. I understand if this type of stuff isn’t exactly your cup of tea, but bear with me while you can. In some sense, most of what we refer to as computer science isn’t computer science at all, any more than what an accountant does is math. Sure, modern economics takes some crazy hardcore theory to make it all work, but un- derlying the whole thing is a solid layer of applications and industrial moolah.
    [Show full text]
  • Turing's Influence on Programming — Book Extract from “The Dawn of Software Engineering: from Turing to Dijkstra”
    Turing's Influence on Programming | Book extract from \The Dawn of Software Engineering: from Turing to Dijkstra" Edgar G. Daylight∗ Eindhoven University of Technology, The Netherlands [email protected] Abstract Turing's involvement with computer building was popularized in the 1970s and later. Most notable are the books by Brian Randell (1973), Andrew Hodges (1983), and Martin Davis (2000). A central question is whether John von Neumann was influenced by Turing's 1936 paper when he helped build the EDVAC machine, even though he never cited Turing's work. This question remains unsettled up till this day. As remarked by Charles Petzold, one standard history barely mentions Turing, while the other, written by a logician, makes Turing a key player. Contrast these observations then with the fact that Turing's 1936 paper was cited and heavily discussed in 1959 among computer programmers. In 1966, the first Turing award was given to a programmer, not a computer builder, as were several subsequent Turing awards. An historical investigation of Turing's influence on computing, presented here, shows that Turing's 1936 notion of universality became increasingly relevant among programmers during the 1950s. The central thesis of this paper states that Turing's in- fluence was felt more in programming after his death than in computer building during the 1940s. 1 Introduction Many people today are led to believe that Turing is the father of the computer, the father of our digital society, as also the following praise for Martin Davis's bestseller The Universal Computer: The Road from Leibniz to Turing1 suggests: At last, a book about the origin of the computer that goes to the heart of the story: the human struggle for logic and truth.
    [Show full text]
  • A Combinatorial Analysis of Finite Boolean Algebras
    A Combinatorial Analysis of Finite Boolean Algebras Kevin Halasz [email protected] May 1, 2013 Copyright c Kevin Halasz. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license can be found at http://www.gnu.org/copyleft/fdl.html. 1 Contents 1 Introduction 3 2 Basic Concepts 3 2.1 Chains . .3 2.2 Antichains . .6 3 Dilworth's Chain Decomposition Theorem 6 4 Boolean Algebras 8 5 Sperner's Theorem 9 5.1 The Sperner Property . .9 5.2 Sperner's Theorem . 10 6 Extensions 12 6.1 Maximally Sized Antichains . 12 6.2 The Erdos-Ko-Rado Theorem . 13 7 Conclusion 14 2 1 Introduction Boolean algebras serve an important purpose in the study of algebraic systems, providing algebraic structure to the notions of order, inequality, and inclusion. The algebraist is always trying to understand some structured set using symbol manipulation. Boolean algebras are then used to study the relationships that hold between such algebraic structures while still using basic techniques of symbol manipulation. In this paper we will take a step back from the standard algebraic practices, and analyze these fascinating algebraic structures from a different point of view. Using combinatorial tools, we will provide an in-depth analysis of the structure of finite Boolean algebras. We will start by introducing several ways of analyzing poset substructure from a com- binatorial point of view.
    [Show full text]
  • A Boolean Algebra and K-Map Approach
    Proceedings of the International Conference on Industrial Engineering and Operations Management Washington DC, USA, September 27-29, 2018 Reliability Assessment of Bufferless Production System: A Boolean Algebra and K-Map Approach Firas Sallumi ([email protected]) and Walid Abdul-Kader ([email protected]) Industrial and Manufacturing Systems Engineering University of Windsor, Windsor (ON) Canada Abstract In this paper, system reliability is determined based on a K-map (Karnaugh map) and the Boolean algebra theory. The proposed methodology incorporates the K-map technique for system level reliability, and Boolean analysis for interactions. It considers not only the configuration of the production line, but also effectively incorporates the interactions between the machines composing the line. Through the K-map, a binary argument is used for considering the interactions between the machines and a probability expression is found to assess the reliability of a bufferless production system. The paper covers three main system design configurations: series, parallel and hybrid (mix of series and parallel). In the parallel production system section, three strategies or methods are presented to find the system reliability. These are the Split, the Overlap, and the Zeros methods. A real-world case study from the automotive industry is presented to demonstrate the applicability of the approach used in this research work. Keywords: Series, Series-Parallel, Hybrid, Bufferless, Production Line, Reliability, K-Map, Boolean algebra 1. Introduction Presently, the global economy is forcing companies to have their production systems maintain low inventory and provide short delivery times. Therefore, production systems are required to be reliable and productive to make products at rates which are changing with the demand.
    [Show full text]
  • 2020 SIGACT REPORT SIGACT EC – Eric Allender, Shuchi Chawla, Nicole Immorlica, Samir Khuller (Chair), Bobby Kleinberg September 14Th, 2020
    2020 SIGACT REPORT SIGACT EC – Eric Allender, Shuchi Chawla, Nicole Immorlica, Samir Khuller (chair), Bobby Kleinberg September 14th, 2020 SIGACT Mission Statement: The primary mission of ACM SIGACT (Association for Computing Machinery Special Interest Group on Algorithms and Computation Theory) is to foster and promote the discovery and dissemination of high quality research in the domain of theoretical computer science. The field of theoretical computer science is the rigorous study of all computational phenomena - natural, artificial or man-made. This includes the diverse areas of algorithms, data structures, complexity theory, distributed computation, parallel computation, VLSI, machine learning, computational biology, computational geometry, information theory, cryptography, quantum computation, computational number theory and algebra, program semantics and verification, automata theory, and the study of randomness. Work in this field is often distinguished by its emphasis on mathematical technique and rigor. 1. Awards ▪ 2020 Gödel Prize: This was awarded to Robin A. Moser and Gábor Tardos for their paper “A constructive proof of the general Lovász Local Lemma”, Journal of the ACM, Vol 57 (2), 2010. The Lovász Local Lemma (LLL) is a fundamental tool of the probabilistic method. It enables one to show the existence of certain objects even though they occur with exponentially small probability. The original proof was not algorithmic, and subsequent algorithmic versions had significant losses in parameters. This paper provides a simple, powerful algorithmic paradigm that converts almost all known applications of the LLL into randomized algorithms matching the bounds of the existence proof. The paper further gives a derandomized algorithm, a parallel algorithm, and an extension to the “lopsided” LLL.
    [Show full text]
  • A Guide to Self-Distributive Quasigroups, Or Latin Quandles
    A GUIDE TO SELF-DISTRIBUTIVE QUASIGROUPS, OR LATIN QUANDLES DAVID STANOVSKY´ Abstract. We present an overview of the theory of self-distributive quasigroups, both in the two- sided and one-sided cases, and relate the older results to the modern theory of quandles, to which self-distributive quasigroups are a special case. Most attention is paid to the representation results (loop isotopy, linear representation, homogeneous representation), as the main tool to investigate self-distributive quasigroups. 1. Introduction 1.1. The origins of self-distributivity. Self-distributivity is such a natural concept: given a binary operation on a set A, fix one parameter, say the left one, and consider the mappings ∗ La(x) = a x, called left translations. If all such mappings are endomorphisms of the algebraic structure (A,∗ ), the operation is called left self-distributive (the prefix self- is usually omitted). Equationally,∗ the property says a (x y) = (a x) (a y) ∗ ∗ ∗ ∗ ∗ for every a, x, y A, and we see that distributes over itself. Self-distributivity∈ was pinpointed already∗ in the late 19th century works of logicians Peirce and Schr¨oder [69, 76], and ever since, it keeps appearing in a natural way throughout mathematics, perhaps most notably in low dimensional topology (knot and braid invariants) [12, 15, 63], in the theory of symmetric spaces [57] and in set theory (Laver’s groupoids of elementary embeddings) [15]. Recently, Moskovich expressed an interesting statement on his blog [60] that while associativity caters to the classical world of space and time, distributivity is, perhaps, the setting for the emerging world of information.
    [Show full text]
  • Higher Braid Groups and Regular Semigroups from Polyadic-Binary Correspondence
    mathematics Article Higher Braid Groups and Regular Semigroups from Polyadic-Binary Correspondence Steven Duplij Center for Information Technology (WWU IT), Universität Münster, Röntgenstrasse 7-13, D-48149 Münster, Germany; [email protected] Abstract: In this note, we first consider a ternary matrix group related to the von Neumann regular semigroups and to the Artin braid group (in an algebraic way). The product of a special kind of ternary matrices (idempotent and of finite order) reproduces the regular semigroups and braid groups with their binary multiplication of components. We then generalize the construction to the higher arity case, which allows us to obtain some higher degree versions (in our sense) of the regular semigroups and braid groups. The latter are connected with the generalized polyadic braid equation and R-matrix introduced by the author, which differ from any version of the well-known tetrahedron equation and higher-dimensional analogs of the Yang-Baxter equation, n-simplex equations. The higher degree (in our sense) Coxeter group and symmetry groups are then defined, and it is shown that these are connected only in the non-higher case. Keywords: regular semigroup; braid group; generator; relation; presentation; Coxeter group; symmetric group; polyadic matrix group; querelement; idempotence; finite order element MSC: 16T25; 17A42; 20B30; 20F36; 20M17; 20N15 Citation: Duplij, S. Higher Braid Groups and Regular Semigroups from Polyadic-Binary 1. Introduction Correspondence. Mathematics 2021, 9, We begin by observing that the defining relations of the von Neumann regular semi- 972. https://doi.org/10.3390/ groups (e.g., References [1–3]) and the Artin braid group [4,5] correspond to such properties math9090972 of ternary matrices (over the same set) as idempotence and the orders of elements (period).
    [Show full text]
  • What Is Computerscience?
    What is Computer Science? Computer Science Defined? • “computer science” —which, actually is like referring to surgery as “knife science” - Prof. Dr. Edsger W. Dijkstra • “A branch of science that deals with the theory of computation or the design of computers” - Webster Dictionary • Computer science "is the study of computation and information” - University of York • “Computer science is the study of process: how we or computers do things, how we specify what we do, and how we specify what the stuff is that we’re processing.” - Your Textbook Computer Science in Reality The study of using computers to solve problems. Fields of Computer Science • Software Engineering • Multimedia (Game Design, Animation, DataVisualization) • Web Development • Networking • Big Data / Machine Learning /AI • Bioinformatics • Robotics • Internet of Things • … Computers Rule the World! • Shopping • Communication / SocialMedia • Work • Entertainment • Vehicles • Appliances • Banking • … Overview of the Couse • Learn a programming language • Develop algorithms and write programs to implement them • Understand how computers store data and multimedia • Have fun! Programming Languages • How we communicate with computers in a way they understand • Lots of different languages, some with special purposes • How we write programs to implement algorithms What’s an Algorithm? Input Algorithm Output • An algorithm is a finite series of instructions applied to an input to produceoutput. • Computer programs are made up of algorithms. The “Recipe” Analogy Input Output Algorithm
    [Show full text]
  • Propositional Fuzzy Logics: Tableaux and Strong Completeness Agnieszka Kulacka
    Imperial College London Department of Computing Propositional Fuzzy Logics: Tableaux and Strong Completeness Agnieszka Kulacka A thesis submitted in partial fulfilment of the requirements for the degree of Doctor of Philosophy in Computing Research. London 2017 Acknowledgements I would like to thank my supervisor, Professor Ian Hodkinson, for his patient guidance and always responding to my questions promptly and helpfully. I am deeply grateful for his thorough explanations of difficult topics, in-depth discus- sions and for enlightening suggestions on the work at hand. Studying under the supervision of Professor Hodkinson also proved that research in logic is enjoyable. Two other people influenced the quality of this work, and these are my exam- iners, whose constructive comments shaped the thesis to much higher standards both in terms of the content as well as the presentation of it. This project would not have been completed without encouragement and sup- port of my husband, to whom I am deeply indebted for that. Abstract In his famous book Mathematical Fuzzy Logic, Petr H´ajekdefined a new fuzzy logic, which he called BL. It is weaker than the three fundamental fuzzy logics Product,Lukasiewicz and G¨odel,which are in turn weaker than classical logic, but axiomatic systems for each of them can be obtained by adding axioms to BL. Thus, H´ajek placed all these logics in a unifying axiomatic framework. In this dissertation, two problems concerning BL and other fuzzy logics have been considered and solved. One was to construct tableaux for BL and for BL with additional connectives. Tableaux are automatic systems to verify whether a given formula must have given truth values, or to build a model in which it does not have these specific truth values.
    [Show full text]
  • Laws of Thought and Laws of Logic After Kant”1
    “Laws of Thought and Laws of Logic after Kant”1 Published in Logic from Kant to Russell, ed. S. Lapointe (Routledge) This is the author’s version. Published version: https://www.routledge.com/Logic-from-Kant-to- Russell-Laying-the-Foundations-for-Analytic-Philosophy/Lapointe/p/book/9781351182249 Lydia Patton Virginia Tech [email protected] Abstract George Boole emerged from the British tradition of the “New Analytic”, known for the view that the laws of logic are laws of thought. Logicians in the New Analytic tradition were influenced by the work of Immanuel Kant, and by the German logicians Wilhelm Traugott Krug and Wilhelm Esser, among others. In his 1854 work An Investigation of the Laws of Thought on Which are Founded the Mathematical Theories of Logic and Probabilities, Boole argues that the laws of thought acquire normative force when constrained to mathematical reasoning. Boole’s motivation is, first, to address issues in the foundations of mathematics, including the relationship between arithmetic and algebra, and the study and application of differential equations (Durand-Richard, van Evra, Panteki). Second, Boole intended to derive the laws of logic from the laws of the operation of the human mind, and to show that these laws were valid of algebra and of logic both, when applied to a restricted domain. Boole’s thorough and flexible work in these areas influenced the development of model theory (see Hodges, forthcoming), and has much in common with contemporary inferentialist approaches to logic (found in, e.g., Peregrin and Resnik). 1 I would like to thank Sandra Lapointe for providing the intellectual framework and leadership for this project, for organizing excellent workshops that were the site for substantive collaboration with others working on this project, and for comments on a draft.
    [Show full text]
  • 12 Propositional Logic
    CHAPTER 12 ✦ ✦ ✦ ✦ Propositional Logic In this chapter, we introduce propositional logic, an algebra whose original purpose, dating back to Aristotle, was to model reasoning. In more recent times, this algebra, like many algebras, has proved useful as a design tool. For example, Chapter 13 shows how propositional logic can be used in computer circuit design. A third use of logic is as a data model for programming languages and systems, such as the language Prolog. Many systems for reasoning by computer, including theorem provers, program verifiers, and applications in the field of artificial intelligence, have been implemented in logic-based programming languages. These languages generally use “predicate logic,” a more powerful form of logic that extends the capabilities of propositional logic. We shall meet predicate logic in Chapter 14. ✦ ✦ ✦ ✦ 12.1 What This Chapter Is About Section 12.2 gives an intuitive explanation of what propositional logic is, and why it is useful. The next section, 12,3, introduces an algebra for logical expressions with Boolean-valued operands and with logical operators such as AND, OR, and NOT that Boolean algebra operate on Boolean (true/false) values. This algebra is often called Boolean algebra after George Boole, the logician who first framed logic as an algebra. We then learn the following ideas. ✦ Truth tables are a useful way to represent the meaning of an expression in logic (Section 12.4). ✦ We can convert a truth table to a logical expression for the same logical function (Section 12.5). ✦ The Karnaugh map is a useful tabular technique for simplifying logical expres- sions (Section 12.6).
    [Show full text]