1 / 19

Need for “simplification”

Need for “simplification”. From Textbook Chapter 3. “If the reactor is on-line and the operator has typed in a query command, then the query log will be updated” What causes the query log to be updated? Reactor is on-line AND Operator has typed a query command.

oren
Download Presentation

Need for “simplification”

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Need for “simplification” From Textbook Chapter 3 • “If the reactor is on-line and the operator has typed in a query command, then the query log will be updated” • What causes the query log to be updated? • Reactor is on-line AND • Operator has typed a query command. • What if reactor were off-line and the operator types in a query command --- will there still be query log? Working with English text is a cumbersome task and quite error prone. Let’s simplify this- - - using symbols (variables) to stand for English statements.

  2. Proposition • What is a proposition? • An offering for consideration • A statement • An expression in some language or in some set of signs. • Def: A proposition is a statement (in English or some other language) that has a value of either true or false but not both. For example - • It is raining in Atlanta right now (temporal?) • 15 > 56 (always?) • This system has a login function

  3. Propositional Calculus • A branch of logic that studies the propositions, which may be represented by symbols, and the connectors (or operators) of these propositions. • Logic provides us the basis for reasoning (what is reasoning ?) • Propositional calculusprovides us the basis of reasoning through the analysis of • the propositions and • the connectors of the propositions.

  4. Why Do We in Software Engineering Care ? • Some obvious applications to computer science and software engineering: • specifying and analyzing requirement statements • specifying and analyzing design statements • specifying and analyzing test scenarios and test results • specifying a computational statement

  5. Assigning a Name for the Proposition • In order to simplify the operations and communications of propositions, it is easier to utilize a symbol for a proposition. • S1: It is raining in Atlanta • S2: It is raining in San Francisco • S3: It is raining in Atlanta, and it is raining in San Francisco. S3 may be written as : S1 and S2

  6. Truth Value in Propositional Calculus • A proposition or statement, S, is either true or false, but not bothor neither. • It is raining in Atlanta today ---- True • 54 < 103 ---- True • S comes after T in English alphabet ---- False • If a statement, S, is true, then it’s negation is false. • S is true, then NOT S can not also be true

  7. Propositional Connectors or Operators • There are 5 “basic” connectors that allows us to manipulate propositions and form compound proposition from combining the individual propositions with the connectors • Not : ~ (or ¬ ) • AND (conjunction): /\ • OR (disjunction): \/ • Implies: => • Equals: <=> • -- and -- • Exclusive OR: \/e Note: The order of evaluation is also from ~ to . e.g. ~ A v B is (~A) v B The author often assumes this instead of using parenthesis

  8. Truth Table and Logical NOT • A tool, in the form of table, that allows us to depict the truth value of propositions. • For statement S and the NOT operator, ~ S, we have the following truth table: S ~ S Statements: T F Truth Values: F T

  9. Logical AND • For two different statements, S1 and S2, the AND connector logically connects the two statements in such a manner that the following truth table depicts the truth value of the combined statements, S1/\S2. S2 S1 /\ S2 S2 /\ S1 S1 T T T T F F T F F T F F F F F F Logical AND operator is “commutative”

  10. Logical OR • For two different statements, S1 and S2, the OR connector logically connects the two statements in such a manner that the following truth table depicts the truth value of the combined statements, S1\/S2. S2 S1 \/ S2 S2 \/ S1 S1 T T T T T T T F F T T T F F F F Logical OR operator is “commutative”

  11. Logical Implies • For two different statements, S1 and S2, the Implies connector (or “if --- then--”) logically connects the two statements in such a manner that the following truth table depicts the truth value of the combined statements, S1=>S2. S2 S1 => S2 S1 T T T F T F F T T F F T

  12. More on Logical Implies • There is something strange about logical implies when we face real statements. Consider the following situation: • Assume that number of chairs in the conference room is 200 • the number of conference attendees is greater than 200 implies that some attendee will be standing • let s1: number of attendees is greater than 200 • let s2: some attendee will be standing • If S1 is true would imply that S2 must also be true • Can some attendees be standing, if S1 was false? -Note that when S1 is not TRUE, the composite proposition, S1=>S2 is true ! -The logical truth values of “implies” tells us that the traditional English term of “cause and effect” is not what “implies” means here. -Some logicians prefer to say Not S1 OR S2, instead. S1 S2 S1 => S2 ~S1 \/ S2 T T T T T F F F F T T T F F T T

  13. Logically Equivalent • Two statements or propositions, S1 and S2, are logically equivalent if they have the same truth values in the truth table: • When S1 is true so is S2 and vise versa and • When S1 is false so is S2 and vise versa.

  14. Logical Equals • For two different statements, S1 and S2, the “EQUALS” connector (or “if and only if”) logically connects the two statements in such a manner that the following truth table depicts the truth value of the combined statements, S1<=>S2. S2 S1 <=> S2 S1 T T T F T F F T F F F T

  15. Expressing <=> with Just, ~, \/ and /\ Connectors S1 S2 ~S1 ~S2 S1<=>S2 ~S1\/S2 ~S2\/S1 (~S1\/S2)/\(~S2\/S1) T T F F T T T T F T F T F F T F F F T T F F T F F F T T T T T T Note : just like A=>B has the same truth values as ~A\/B, A<=>B has the same truth values as (A=>B) /\ (B=>A) which is the same as (~A\/B) /\ (~B \/A))

  16. Some Examples of Compound Statements utilizing the Connectors A) “ No work, no pay” or “if no work then no pay” can be expressed as Let : P stand for : work Q stand for : pay then we have : ~ P => ~Q B) or “work if paid” or “if paid then must have worked” Q => P P ~P Q ~Q ~P => ~Q Q => P T F T F T T T T T F F T F T T F F F F T F T T T “No work, no pay” <=> “work if paid”

  17. Well Formed Formula (WFF) • A well formed formula (wff) is a string generated by a formal grammar. • A wff in propositional calculus is a string generated with the following rule (grammar): • A proposition X is a wff • If X is wff then so is ~X • If X, Y are wff then so are: • X Λ Y • X V Y • X => Y • X Y • X \/e Y • If X is a wff then so is (X) Later we will deal with proofs. A proof is just a sequence of wff’s. Manipulations of these wffs is similar to manipulating syntax.

  18. What About “True” and “False”? • Does Propositional Calculus allow expression such as Is-Raining \/ TRUE ? • So, we should include TRUE and FALSE as “constants” into the vocabulary of Propositional calculus • A wff in propositional calculus is a string generated with the following rule (grammar): • A proposition X is a wff • TRUE, FALSE are wff (these have constant value of true and false) • If X is wff then so is ~X • If X, Y are wff then so are: • X Λ Y • X V Y • X => Y • X Y • X \/e Y • If X is a wff then so is (X)

  19. Is “=>” operator “transitive” ?Does (S1 => S2 AND S2=> S3) => (S1 =>S3) ?What about “equal”Does (S1=>S2 AND S2 => S3) EQUAL (S1 =>S3) ? Something for you to think about ------

More Related