A Polynomial-Time Heuristic for Circuit-SAT

Total Page:16

File Type:pdf, Size:1020Kb

A Polynomial-Time Heuristic for Circuit-SAT A polynomial-time heuristic for Circuit-SAT Francesco Capasso [email protected] Abstract. In this paper is presented an heuristic that, in polynomial time and space in the input dimension, determines if a circuit describes a tautology or a contradiction. If the circuit is neither a tautology nor a contradiction, then the heuristic finds an assignment to the circuit inputs such that the circuit is satis- fied. 1. Introduction Circuit - SAT: given a circuit C and x1, …, xn inputs find a value 0 or 1 for each input such that circuit’s output equals 1. Circuit-SAT is one of the main NP-complete problems [1], however most solvers proposed are based on the reduction from Circuit-SAT to SAT, which is another NP- complete problem. Many attempts have been made so far in order to efficiently solve SAT, but no satisfying solution has been found yet. The approach adopted to solve Circuit-SAT follows the ideas already outlined in “Solving SAT with Bilateral Computing” [2] and consists in a reverse circuit execu- tion. Beginning from the output, that has a value 1 or 0, we go back through the cir- cuit gates up to its inputs. In so doing we get those input values such that the output equals the value fixed in the beginning. The present heuristic finds, in polynomial time and space in the input dimension, an assignment, if exists, to the inputs of a circuit C such that the output equals 1. In what follows is introduced a list of logic gates features (2) and two data struc- tures (3). Subsequently is presented the heuristic (4) and its proof of correctness (5) for some particular circuit classes. Then is introduced a recursive function (6) to up- date data structures, after that is given the correctness of heuristic for each circuit class (7) and then is calculated its computational complexity (8). 2 Francesco Capasso 2. Properties of logic gates Given a circuit C we assign a label xi to each input (0≤i≤n), a label Gj to each logic gate and a label yj to each logic gate output (0≤j≤m). In this way the circuit in figure 1 can be represented by formula 1. Figure 1. Sample circuit. (y1 = x1 ∧ x4 ) ∧ (y2 = ¬x4 ) ∧ (y3 = ¬x5 ) ∧ (y4 = y1 ∨ x2 ) ∧ (y5 = ¬x2 ) ∧ ∧ (y6 = x3 ∧ y2 ) ∧ (y7 = y5 ∨ y6 ) ∧ (y8 = y4 ∧ y7 ) ∧ (1) ∧ (y9 = y7 ∧ y3 ) ∧ (y10 = y8 ∧ y9 ) A polynomial-time heuristic for Circuit-SAT 3 We notice that each yj is associated to the output of a gate Gj whose truth table is known (table 1). AND OR NOT x y out x y out x out 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 1 1 1 1 1 1 Table 1. Truth table for AND, OR and NOT gates. Definition With the term degree of freedom we define the maximum number of possible com- binations of values that can be assigned to a logic gate according to the values given to its inputs and output. Classification of the degrees of freedom: • Degree 4: o AND and OR gate without any specific value mapped on inputs or output; • Degree 3: o AND gate with output 0; OR gate with output 1; 0 1 0 0 1 1 0 1 1 0 0 1 0 1 • Degree 2: o AND gate with output 0 and an input 0; AND gate with an input 0; 0 0 0/1 4 Francesco Capasso o OR gate with output 1 and an input 1; OR gate with an input 1; 1 1 0/1 • Degree 1: o AND gate with output 0 and input 1; AND gate with output 1; 1 1 0 1 0 1 o OR gate with output 1 and an input 0; OR gate with output 0; 0 0 1 0 1 0 o NOT gate with output 0 or 1, or input 0 or 1; 0 1 1 0 • Degree 0 (contradiction): o AND gate with output 1 and an input 0; 0 1 ? o OR gate with output 0 and input 1; 1 0 ? A polynomial-time heuristic for Circuit-SAT 5 o NOT gate with output and input both 0 or 1; 1 1 0 0 3. Data structures We represent a circuit C using following data structures: 1. a circuit truth table (CTT) with n+m columns (labelled by xi and yj): for each gate we report the corresponding truth table (setting to “null” the fields not assigned to 0 or 1); to each value we assign the label of the gate it belongs. 2. a degree table (DT) with m columns (labelled by Gj): for each gate we report the index of circuit’s truth table rows in which are defined truth value for the gate itself. Figure 2. Sample circuit. The circuit featured in figure 2 can be represented by the following formula: (y1 = x1 ∨ x2 ) ∧ (y2 = ¬x3 ) ∧ (y3 = y1 ∧ y2 ) (2) 6 Francesco Capasso X1 X2 X3 Y1 Y2 Y3 1 0/G1 0/G1 0/G1 2 0/G1 1/G1 1/G1 3 1/G1 0/G1 1/G1 4 1/G1 1/G1 1/G1 5 0/G2 1/G2 6 1/G2 0/G2 7 0/G3 0/G3 0/G3 8 0/G3 1/G3 0/G3 9 1/G3 0/G3 0/G3 10 1/G3 1/G3 1/G3 Table 2. Circuit truth table of circuit in figure 2. G1 G2 G3 1 5 7 2 6 8 3 9 4 10 Table 3. Degree table of circuit in figure 2. We observe that in circuit truth table the maximum number of rows we introduce for each gate is 4, consequently the table has in the worst case dimension (n+m)·(4m) that is O(nm+m²). Similarly we observe that in degree table the maximum number of rows introduced is 4 and the resulting dimension is therefore 4·m that is O(m). A polynomial-time heuristic for Circuit-SAT 7 4. Heuristic Given 0≤j≤m and supposing that each Gj is correlated with a yj: 1. assign a value to the output, ym=1; 2. delete from the circuit truth table all rows in which ym= 0; delete from degree table the values related to the index of previous deleted rows in circuit truth table; 3. until unassigned xi exist: 3.1. assign missing value to the inputs or output of all gates with degree of freedom 1; update circuit truth table and degree table (as shown in step 2); 3.2. if there are no more gates with degree of freedom 1, assign the value 0 or 1 to an input of a gate with degree of freedom 2 or 3; then update the circuit truth table and degree table (as shown in step 3.2); Applying the heuristic to the circuit showed in figure 2 we obtain: • [step 1]: set y3=1; • [step 2]: − delete from CTT all rows where y3 = 0 (rows 7, 8 and 9); − delete from DT, field G3, the values 7, 8 and 9; • [step 3.1]: − degree(G1)=4; degree(G2)=2; degree(G3)=1 y2=1 and y1= 1 (row 10); − delete from CTT all rows where y1 = 0 (row 1) ed y2 = 0 (row 6); − delete from DT, field G1 value 1, and in field G2 value 6; − degree(G1)=3, degree(G2)=1 x3 = 0 (row 5); • [step 3.2]: − degree(G1)=3; − determine a value for one of the inputs in G1, for instance x1 = 1; − delete from CTT all rows where x1 = 0 (row 2); − delete from DT, field G1, the value 2; − degree(G1)=2; 8 Francesco Capasso − set a value for x2, for instance x2 = 0; − delete from CTT all rows where x2=1 (row 4); − delete from DT, field G1, the value 4; The solution is given by the remaining rows in the circuit truth table (3, 5 e 10). These rows contain the assignment sought for x1, x2 and x3. 5. Correctness The correctness of steps 1 and 2 is obvious. To demonstrate the correctness of steps 3.1 and 3.2 we observe circuit in figure 3. This circuit describes neither a con- tradiction nor a tautology therefore exists an assignment to its inputs that satisfy the circuit. In the first case (a) applying step 3.1 and then 3.2 we obtain a solution, while in the second case applying step 3.2 before step 3.1 we obtain a contradiction. In other words applying step 3.1 we strongly bind the inputs and output assignment. (a) (b) Figure 3. Solution (a); Contradiction (b). The execution of step 3.1 brings to 3 different configurations: • a chain of consistent assignments for every logic gate and input (for instance, that is the case of a circuit with AND gates only); • a chain of consistent assignments that ends with an inconsistent assignment (that is the case of a circuit which represents a contradiction, figure 4); A polynomial-time heuristic for Circuit-SAT 9 • a chain of consistent assignments for some logic gates and inputs with degree of freedom 1, where the other gates have degree of freedom 2 or 3 (figure 5); Figure 4. Circuit that represent a contradiction. In the first case the heuristic ends with a solution, whereas in the second case it tells us that a solution does not exist. The third case is more articulated and introduces us to the correctness’s proof of step 3.2.
Recommended publications
  • Engineering Transcriptional Control and Synthetic Gene Circuits in Cell Free Systems
    University of Tennessee, Knoxville TRACE: Tennessee Research and Creative Exchange Doctoral Dissertations Graduate School 12-2012 Engineering Transcriptional Control and Synthetic Gene Circuits in Cell Free systems Sukanya Iyer University of Tennessee, [email protected] Follow this and additional works at: https://trace.tennessee.edu/utk_graddiss Part of the Biotechnology Commons Recommended Citation Iyer, Sukanya, "Engineering Transcriptional Control and Synthetic Gene Circuits in Cell Free systems. " PhD diss., University of Tennessee, 2012. https://trace.tennessee.edu/utk_graddiss/1586 This Dissertation is brought to you for free and open access by the Graduate School at TRACE: Tennessee Research and Creative Exchange. It has been accepted for inclusion in Doctoral Dissertations by an authorized administrator of TRACE: Tennessee Research and Creative Exchange. For more information, please contact [email protected]. To the Graduate Council: I am submitting herewith a dissertation written by Sukanya Iyer entitled "Engineering Transcriptional Control and Synthetic Gene Circuits in Cell Free systems." I have examined the final electronic copy of this dissertation for form and content and recommend that it be accepted in partial fulfillment of the equirr ements for the degree of Doctor of Philosophy, with a major in Life Sciences. Mitchel J. Doktycz, Major Professor We have read this dissertation and recommend its acceptance: Michael L. Simpson, Albrecht G. von Arnim, Barry D. Bruce, Jennifer L. Morrell-Falvey Accepted for the Council: Carolyn R. Hodges Vice Provost and Dean of the Graduate School (Original signatures are on file with official studentecor r ds.) Engineering Transcriptional Control and Synthetic Gene Circuits in Cell Free systems A Dissertation Presented for the Doctor of Philosophy Degree The University of Tennessee, Knoxville Sukanya Iyer December 2012 Copyright © 2012 by Sukanya Iyer.
    [Show full text]
  • CSE Yet, Please Do Well! Logical Connectives
    administrivia Course web: http://www.cs.washington.edu/311 Office hours: 12 office hours each week Me/James: MW 10:30-11:30/2:30-3:30pm or by appointment TA Section: Start next week Call me: Shayan Don’t: Actually call me. Homework #1: Will be posted today, due next Friday by midnight (Oct 9th) Gradescope! (stay tuned) Extra credit: Not required to get a 4.0. Counts separately. In total, may raise grade by ~0.1 Don’t be shy (raise your hand in the back)! Do space out your participation. If you are not CSE yet, please do well! logical connectives p q p q p p T T T T F T F F F T F T F NOT F F F AND p q p q p q p q T T T T T F T F T T F T F T T F T T F F F F F F OR XOR 푝 → 푞 • “If p, then q” is a promise: p q p q F F T • Whenever p is true, then q is true F T T • Ask “has the promise been broken” T F F T T T If it’s raining, then I have my umbrella. related implications • Implication: p q • Converse: q p • Contrapositive: q p • Inverse: p q How do these relate to each other? How to see this? 푝 ↔ 푞 • p iff q • p is equivalent to q • p implies q and q implies p p q p q Let’s think about fruits A fruit is an apple only if it is either red or green and a fruit is not red and green.
    [Show full text]
  • Propositional Logic (PDF)
    Mathematics for Computer Science Proving Validity 6.042J/18.062J Instead of truth tables, The Logic of can try to prove valid formulas symbolically using Propositions axioms and deduction rules Albert R Meyer February 14, 2014 propositional logic.1 Albert R Meyer February 14, 2014 propositional logic.2 Proving Validity Algebra for Equivalence The text describes a for example, bunch of algebraic rules to the distributive law prove that propositional P AND (Q OR R) ≡ formulas are equivalent (P AND Q) OR (P AND R) Albert R Meyer February 14, 2014 propositional logic.3 Albert R Meyer February 14, 2014 propositional logic.4 1 Algebra for Equivalence Algebra for Equivalence for example, The set of rules for ≡ in DeMorgan’s law the text are complete: ≡ NOT(P AND Q) ≡ if two formulas are , these rules can prove it. NOT(P) OR NOT(Q) Albert R Meyer February 14, 2014 propositional logic.5 Albert R Meyer February 14, 2014 propositional logic.6 A Proof System A Proof System Another approach is to Lukasiewicz’ proof system is a start with some valid particularly elegant example of this idea. formulas (axioms) and deduce more valid formulas using proof rules Albert R Meyer February 14, 2014 propositional logic.7 Albert R Meyer February 14, 2014 propositional logic.8 2 A Proof System Lukasiewicz’ Proof System Lukasiewicz’ proof system is a Axioms: particularly elegant example of 1) (¬P → P) → P this idea. It covers formulas 2) P → (¬P → Q) whose only logical operators are 3) (P → Q) → ((Q → R) → (P → R)) IMPLIES (→) and NOT. The only rule: modus ponens Albert R Meyer February 14, 2014 propositional logic.9 Albert R Meyer February 14, 2014 propositional logic.10 Lukasiewicz’ Proof System Lukasiewicz’ Proof System Prove formulas by starting with Prove formulas by starting with axioms and repeatedly applying axioms and repeatedly applying the inference rule.
    [Show full text]
  • Sets, Propositional Logic, Predicates, and Quantifiers
    COMP 182 Algorithmic Thinking Sets, Propositional Logic, Luay Nakhleh Computer Science Predicates, and Quantifiers Rice University !1 Reading Material ❖ Chapter 1, Sections 1, 4, 5 ❖ Chapter 2, Sections 1, 2 !2 ❖ Mathematics is about statements that are either true or false. ❖ Such statements are called propositions. ❖ We use logic to describe them, and proof techniques to prove whether they are true or false. !3 Propositions ❖ 5>7 ❖ The square root of 2 is irrational. ❖ A graph is bipartite if and only if it doesn’t have a cycle of odd length. ❖ For n>1, the sum of the numbers 1,2,3,…,n is n2. !4 Propositions? ❖ E=mc2 ❖ The sun rises from the East every day. ❖ All species on Earth evolved from a common ancestor. ❖ God does not exist. ❖ Everyone eventually dies. !5 ❖ And some of you might already be wondering: “If I wanted to study mathematics, I would have majored in Math. I came here to study computer science.” !6 ❖ Computer Science is mathematics, but we almost exclusively focus on aspects of mathematics that relate to computation (that can be implemented in software and/or hardware). !7 ❖Logic is the language of computer science and, mathematics is the computer scientist’s most essential toolbox. !8 Examples of “CS-relevant” Math ❖ Algorithm A correctly solves problem P. ❖ Algorithm A has a worst-case running time of O(n3). ❖ Problem P has no solution. ❖ Using comparison between two elements as the basic operation, we cannot sort a list of n elements in less than O(n log n) time. ❖ Problem A is NP-Complete.
    [Show full text]
  • Digital IC Listing
    BELS Digital IC Report Package BELS Unit PartName Type Location ID # Price Type CMOS 74HC00, Quad 2-Input NAND Gate DIP-14 3 - A 500 0.24 74HCT00, Quad 2-Input NAND Gate DIP-14 3 - A 501 0.36 74HC02, Quad 2 Input NOR DIP-14 3 - A 417 0.24 74HC04, Hex Inverter, buffered DIP-14 3 - A 418 0.24 74HC04, Hex Inverter (buffered) DIP-14 3 - A 511 0.24 74HCT04, Hex Inverter (Open Collector) DIP-14 3 - A 512 0.36 74HC08, Quad 2 Input AND Gate DIP-14 3 - A 408 0.24 74HC10, Triple 3-Input NAND DIP-14 3 - A 419 0.31 74HC32, Quad OR DIP-14 3 - B 409 0.24 74HC32, Quad 2-Input OR Gates DIP-14 3 - B 543 0.24 74HC138, 3-line to 8-line decoder / demultiplexer DIP-16 3 - C 603 1.05 74HCT139, Dual 2-line to 4-line decoders / demultiplexers DIP-16 3 - C 605 0.86 74HC154, 4-16 line decoder/demulitplexer, 0.3 wide DIP - Small none 445 1.49 74HC154W, 4-16 line decoder/demultiplexer, 0.6wide DIP none 446 1.86 74HC190, Synchronous 4-Bit Up/Down Decade and Binary Counters DIP-16 3 - D 637 74HCT240, Octal Buffers and Line Drivers w/ 3-State outputs DIP-20 3 - D 643 1.04 74HC244, Octal Buffers And Line Drivers w/ 3-State outputs DIP-20 3 - D 647 1.43 74HCT245, Octal Bus Transceivers w/ 3-State outputs DIP-20 3 - D 649 1.13 74HCT273, Octal D-Type Flip-Flops w/ Clear DIP-20 3 - D 658 1.35 74HCT373, Octal Transparent D-Type Latches w/ 3-State outputs DIP-20 3 - E 666 1.35 74HCT377, Octal D-Type Flip-Flops w/ Clock Enable DIP-20 3 - E 669 1.50 74HCT573, Octal Transparent D-Type Latches w/ 3-State outputs DIP-20 3 - E 674 0.88 Type CMOS CD4000 Series CD4001, Quad 2-input
    [Show full text]
  • From Fuzzy Sets to Crisp Truth Tables1 Charles C. Ragin
    From Fuzzy Sets to Crisp Truth Tables1 Charles C. Ragin Department of Sociology University of Arizona Tucson, AZ 85721 USA [email protected] Version: April 2005 1. Overview One limitation of the truth table approach is that it is designed for causal conditions are simple presence/absence dichotomies (i.e., Boolean or "crisp" sets). Many of the causal conditions that interest social scientists, however, vary by level or degree. For example, while it is clear that some countries are democracies and some are not, there are many in-between cases. These countries are not fully in the set of democracies, nor are they fully excluded from this set. Fortunately, there is a well-developed mathematical system for addressing partial membership in sets, fuzzy-set theory. Section 2 of this paper provides a brief introduction to the fuzzy-set approach, building on Ragin (2000). Fuzzy sets are especially powerful because they allow researchers to calibrate partial membership in sets using values in the interval between 0 (nonmembership) and 1 (full membership) without abandoning core set theoretic principles, for example, the subset relation. Ragin (2000) demonstrates that the subset relation is central to the analysis of multiple conjunctural causation, where several different combinations of conditions are sufficient for the same outcome. While fuzzy sets solve the problem of trying to force-fit cases into one of two categories (membership versus nonmembership in a set), they are not well suited for conventional truth table analysis. With fuzzy sets, there is no simple way to sort cases according to the combinations of causal conditions they display because each case's array of membership scores may be unique.
    [Show full text]
  • The Equation for the 3-Input XOR Gate Is Derived As Follows
    The equation for the 3-input XOR gate is derived as follows The last four product terms in the above derivation are the four 1-minterms in the 3-input XOR truth table. For 3 or more inputs, the XOR gate has a value of 1when there is an odd number of 1’s in the inputs, otherwise, it is a 0. Notice also that the truth tables for the 3-input XOR and XNOR gates are identical. It turns out that for an even number of inputs, XOR is the inverse of XNOR, but for an odd number of inputs, XOR is equal to XNOR. All these gates can be interconnected together to form large complex circuits which we call networks. These networks can be described graphically using circuit diagrams, with Boolean expressions or with truth tables. 3.2 Describing Logic Circuits Algebraically Any logic circuit, no matter how complex, may be completely described using the Boolean operations previously defined, because of the OR gate, AND gate, and NOT circuit are the basic building blocks of digital systems. For example consider the circuit shown in Figure 1.3(c). The circuit has three inputs, A, B, and C, and a single output, x. Utilizing the Boolean expression for each gate, we can easily determine the expression for the output. The expression for the AND gate output is written A B. This AND output is connected as an input to the OR gate along with C, another input. The OR gate operates on its inputs such that its output is the OR sum of the inputs.
    [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]
  • Lecture 1: Propositional Logic
    Lecture 1: Propositional Logic Syntax Semantics Truth tables Implications and Equivalences Valid and Invalid arguments Normal forms Davis-Putnam Algorithm 1 Atomic propositions and logical connectives An atomic proposition is a statement or assertion that must be true or false. Examples of atomic propositions are: “5 is a prime” and “program terminates”. Propositional formulas are constructed from atomic propositions by using logical connectives. Connectives false true not and or conditional (implies) biconditional (equivalent) A typical propositional formula is The truth value of a propositional formula can be calculated from the truth values of the atomic propositions it contains. 2 Well-formed propositional formulas The well-formed formulas of propositional logic are obtained by using the construction rules below: An atomic proposition is a well-formed formula. If is a well-formed formula, then so is . If and are well-formed formulas, then so are , , , and . If is a well-formed formula, then so is . Alternatively, can use Backus-Naur Form (BNF) : formula ::= Atomic Proposition formula formula formula formula formula formula formula formula formula formula 3 Truth functions The truth of a propositional formula is a function of the truth values of the atomic propositions it contains. A truth assignment is a mapping that associates a truth value with each of the atomic propositions . Let be a truth assignment for . If we identify with false and with true, we can easily determine the truth value of under . The other logical connectives can be handled in a similar manner. Truth functions are sometimes called Boolean functions. 4 Truth tables for basic logical connectives A truth table shows whether a propositional formula is true or false for each possible truth assignment.
    [Show full text]
  • Hardware Abstract the Logic Gates References Results Transistors Through the Years Acknowledgements
    The Practical Applications of Logic Gates in Computer Science Courses Presenters: Arash Mahmoudian, Ashley Moser Sponsored by Prof. Heda Samimi ABSTRACT THE LOGIC GATES Logic gates are binary operators used to simulate electronic gates for design of circuits virtually before building them with-real components. These gates are used as an instrumental foundation for digital computers; They help the user control a computer or similar device by controlling the decision making for the hardware. A gate takes in OR GATE AND GATE NOT GATE an input, then it produces an algorithm as to how The OR gate is a logic gate with at least two An AND gate is a consists of at least two A NOT gate, also known as an inverter, has to handle the output. This process prevents the inputs and only one output that performs what inputs and one output that performs what is just a single input with rather simple behavior. user from having to include a microprocessor for is known as logical disjunction, meaning that known as logical conjunction, meaning that A NOT gate performs what is known as logical negation, which means that if its input is true, decision this making. Six of the logic gates used the output of this gate is true when any of its the output of this gate is false if one or more of inputs are true. If all the inputs are false, the an AND gate's inputs are false. Otherwise, if then the output will be false. Likewise, are: the OR gate, AND gate, NOT gate, XOR gate, output of the gate will also be false.
    [Show full text]
  • Propositional Logic, Truth Tables, and Predicate Logic (Rosen, Sections 1.1, 1.2, 1.3) TOPICS
    Propositional Logic, Truth Tables, and Predicate Logic (Rosen, Sections 1.1, 1.2, 1.3) TOPICS • Propositional Logic • Logical Operations • Equivalences • Predicate Logic Logic? What is logic? Logic is a truth-preserving system of inference Truth-preserving: System: a set of If the initial mechanistic statements are transformations, based true, the inferred on syntax alone statements will be true Inference: the process of deriving (inferring) new statements from old statements Proposi0onal Logic n A proposion is a statement that is either true or false n Examples: n This class is CS122 (true) n Today is Sunday (false) n It is currently raining in Singapore (???) n Every proposi0on is true or false, but its truth value (true or false) may be unknown Proposi0onal Logic (II) n A proposi0onal statement is one of: n A simple proposi0on n denoted by a capital leJer, e.g. ‘A’. n A negaon of a proposi0onal statement n e.g. ¬A : “not A” n Two proposi0onal statements joined by a connecve n e.g. A ∧ B : “A and B” n e.g. A ∨ B : “A or B” n If a connec0ve joins complex statements, parenthesis are added n e.g. A ∧ (B∨C) Truth Tables n The truth value of a compound proposi0onal statement is determined by its truth table n Truth tables define the truth value of a connec0ve for every possible truth value of its terms Logical negaon n Negaon of proposi0on A is ¬A n A: It is snowing. n ¬A: It is not snowing n A: Newton knew Einstein. n ¬A: Newton did not know Einstein.
    [Show full text]
  • Solving Logic Problems with a Twist
    Transformations Volume 6 Issue 1 Winter 2020 Article 6 11-30-2020 Solving Logic Problems with a Twist Angie Su Nova Southeastern University, [email protected] Bhagi Phuel Chloe Johnson Dylan Mandolini Shawlyn Fleming Follow this and additional works at: https://nsuworks.nova.edu/transformations Part of the Science and Mathematics Education Commons, and the Teacher Education and Professional Development Commons Recommended Citation Su, Angie; Bhagi Phuel; Chloe Johnson; Dylan Mandolini; and Shawlyn Fleming (2020) "Solving Logic Problems with a Twist," Transformations: Vol. 6 : Iss. 1 , Article 6. Available at: https://nsuworks.nova.edu/transformations/vol6/iss1/6 This Article is brought to you for free and open access by the Abraham S. Fischler College of Education at NSUWorks. It has been accepted for inclusion in Transformations by an authorized editor of NSUWorks. For more information, please contact [email protected]. Solving Logic Problems with a Twist Cover Page Footnote This article was originally published in the Dimensions Journal, A publication of the Florida Council of Teachers of Mathematics Journal. This article is available in Transformations: https://nsuworks.nova.edu/transformations/vol6/iss1/6 Su, Hui Fang Huang, Bhagi Phuel, Chloe Johnson, Dylan Mandolini, and Shawlyn Fleming Solving Logic Problems with a Twist Solving Logic Problems with a Twist Hui Fang Huang Su, Bhagi Phuel, Chloe Johnson, Dylan Mandolini, and Shawlyn Fleming Review of Symbolic Logic Aristotle, Greek philosopher and scientist, was a pupil of Plato and asserted that any logical argument is reducible to two premises and a conclusion (Gullberg, 1997). According to classical (Aristotelian) logic, arguments are governed by three fundamental laws: the principle of identity, the principle of the excluded middle, and the principle of contradiction.
    [Show full text]