Download From p

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Foundations of mathematics wikipedia , lookup

Axiom wikipedia , lookup

History of logic wikipedia , lookup

Fuzzy logic wikipedia , lookup

History of the function concept wikipedia , lookup

Axiom of reducibility wikipedia , lookup

Modal logic wikipedia , lookup

Tractatus Logico-Philosophicus wikipedia , lookup

Syllogism wikipedia , lookup

Intuitionistic logic wikipedia , lookup

Inquiry wikipedia , lookup

Truth wikipedia , lookup

Meaning (philosophy of language) wikipedia , lookup

Analytic–synthetic distinction wikipedia , lookup

Boolean satisfiability problem wikipedia , lookup

Argument wikipedia , lookup

Propositional formula wikipedia , lookup

Catuṣkoṭi wikipedia , lookup

Laws of Form wikipedia , lookup

Law of thought wikipedia , lookup

Propositional calculus wikipedia , lookup

Natural deduction wikipedia , lookup

Truth-bearer wikipedia , lookup

Principia Mathematica wikipedia , lookup

Transcript
Propositional Logic
Propositional logic is a good vehicle to introduce basic properties of logic. It does not
provide means to determine the validity (truth or false) of atomic statements. Instead, it
allows you to evaluate the validity of compound statements given the validity of its
atomic components.
For example, consider the following:
I like Pat or I like Joe.
If I like Pat then I like Joe.
Do I like Joe?
Accept as facts the first two statements, noting that the use of "or" here is not exclusive
and thus could really be thought of as saying "I like Pat, or I like Joe, or I like them
both". Do these statements imply that "I like Joe" is true? Try to convince yourself that "I
like Joe" is true, and consider another line of reasoning:
Pigs can fly or fish can sing.
If pigs can fly then fish can sing.
Can fish sing?
We can see that the answer is yes in both cases. The above two sets of statements can be
both abstracted as follows:
Q?
Here, we are concerned about the logical reasoning itself, and not the statements. Thus,
instead of working with pigs or Pats, we simply write Qs or Ps. We begin our study first
with the syntax of propositional logic: that is, we describe the elements in our language of
logic and how they are written. We then describe the semantics of these symbols: that is,
what the symbols mean.
Logical negation
Logical negation is an operation on one logical value, typically the value of a proposition, that
produces a value of true if its operand is false and a value of false if its operand is true.
The truth table for NOT p (also written as ¬p or ~p) is as follows:
Logical Negation
p
¬p
T
F
F
T
Logical conjunction
Logical conjunction is an operation on two logical values, typically the values of two
propositions, that produces a value of true if and only if both of its operands are true.
The truth table for p AND q (also written as p ∧ q, p & q, or p q) is as follows:
Logical Conjunction
p
q
p∧q
T
T
T
T
F
F
F
T
F
F
F
F
In ordinary language terms, if both p and q are true, then the conjunction p ∧ q is true. For all
other assignments of logical values to p and to q the conjunction p ∧ q is false.
It can also be said that if p, then p ∧ q is q, otherwise p ∧ q is p.
Logical disjunction
Logical disjunction is an operation on two logical values, typically the values of two propositions,
that produces a value of true if and only if at least one of its operands is true.
The truth table for p OR q (also written as p ∨ q, p || q, or p + q) is as follows:
Logical Disjunction
p
q
p∨q
T
T
T
T
F
T
F
T
T
F
F
F
Stated in English, if p, then p ∨ q is p, otherwise p ∨ q is q.
Logical implication
Logical implication and the material conditional are both associated with an operation on two
logical values, typically the values of two propositions, that produces a value of false just in the
singular case the first operand is true and the second operand is false.
The truth table associated with the material conditional not p or q (symbolized as p → q) and
the logical implication p implies q (symbolized as p ⇒ q) is as follows:
Logical Implication
p
q
p→q
T
T
T
T
F
F
F
T
T
F
F
T
Logical equality
Logical equality (also known as biconditional) is an operation on two logical values, typically the
values of two propositions, that produces a value of true if and only if both operands are false or
both operands are true.
The truth table for p EQ q (also written as p ↔ q ,p = q, or p ≡ q) is as follows:
Logical Equality
p
q
p≡q
T
T
T
T
F
F
F
T
F
F
F
T
So p EQ q is true if p and q have the same truth value (both true or both false), and false if they
have different truth values.
Exclusive disjunction
Exclusive disjunction is an operation on two logical values, typically the values of two
propositions, that produces a value of true if and only if one but not both of its operands is true.
The truth table for p XOR q (also written as p ⊕ q, or p ≠ q) is as follows:
Exclusive Disjunction
p
q
p⊕q
T
T
F
T
F
T
F
T
T
F
F
F
For two propositions, XOR can also be written as (p = 1 ∧ q = 0)∨ (p = 0 ∧ q = 1).
[edit] Logical NAND
The logical NAND is an operation on two logical values, typically the values of two propositions,
that produces a value of false if and only if both of its operands are true. In other words, it
produces a value of true if and only if at least one of its operands is false.
The truth table for p NAND q (also written as p ↑ q or p | q) is as follows:
Logical NAND
p
q
p↑q
T
T
F
T
F
T
F
T
T
F
F
T
It is frequently useful to express a logical operation as a compound operation, that is, as an
operation that is built up or composed from other operations. Many such compositions are
possible, depending on the operations that are taken as basic or "primitive" and the operations
that are taken as composite or "derivative".
In the case of logical NAND, it is clearly expressible as a compound of NOT and AND.
The negation of a conjunction: ¬(p ∧ q), and the disjunction of negations: (¬p) ∨ (¬q) can be
tabulated as follows:
p
q
p∧q
¬(p ∧ q)
¬p
¬q
(¬p) ∨ (¬q)
T
T
T
F
F
F
F
T
F
F
T
F
T
T
F
T
F
T
T
F
T
F
F
F
T
T
T
T
Logical NOR
The logical NOR is an operation on two logical values, typically the values of two propositions,
that produces a value of true if and only if both of its operands are false. In other words, it
produces a value of false if and only if at least one of its operands is true. ↓ is also known as the
Peirce arrow after its inventor, Charles Sanders Peirce, and is a Sole sufficient operator.
The truth table for p NOR q (also written as p ↓ q or p ⊥ q) is as follows:
Logical NOR
p
q
p↓q
T
T
F
T
F
F
F
T
F
F
F
T
The negation of a disjunction ¬(p ∨ q), and the conjunction of negations (¬p) ∧ (¬q) can be
tabulated as follows:
p
q
p∨q
¬(p ∨ q)
¬p
¬q
(¬p) ∧ (¬q)
T
T
T
F
F
F
F
T
F
T
F
F
T
F
F
T
T
F
T
F
F
F
F
F
T
T
T
T
Inspection of the tabular derivations for NAND and NOR, under each assignment of logical
values to the functional arguments p and q, produces the identical patterns of functional values
for ¬(p ∧ q) as for (¬p) ∨ (¬q), and for ¬(p ∨ q) as for (¬p) ∧ (¬q). Thus the first and second
expressions in each pair are logically equivalent, and may be substituted for each other in all
contexts that pertain solely to their logical values.
This equivalence is one of De Morgan's laws.
Applications
Truth tables can be used to prove many other logical equivalences. For example, consider the
following truth table:
Logical Equivalence : (p → q) = (¬p ∨ q)
p
q
¬p
¬p ∨ q
p→q
T
T
F
T
T
T
F
F
F
F
F
T
T
T
T
F
F
T
T
T
This demonstrates the fact that p → q is logically equivalent to ¬p ∨ q.
[edit] Truth table for most commonly used logical operators
Here is a truth table giving definitions of the most commonly used 7 of the 16 possible truth
functions of 2 binary variables (P,Q are thus boolean variables):
P Q
T
T
T
T
F
T
T
T
T
T
F
F
T
T
F
F
T
F
F
T
F
T
T
F
T
F
F
F
F
F
F
F
T
T
T
T
Key:
T = true, F = false
= AND (logical conjunction)
= OR (logical disjunction)
= XOR (exclusive or)
= XNOR (exclusive nor)
= conditional "if-then"
= conditional "(then)-if"
biconditional or "if-and-only-if" is logically equivalent to
: XNOR (exclusive
nor).
Logical operators can also be visualized using Venn diagrams.
Condensed truth tables for binary operators
For binary operators, a condensed form of truth table is also used, where the row headings and
the column headings specify the operands and the table cells specify the result. For example
Boolean logic uses this condensed truth table notation:
∧
F
T
∨ F T
F
F
F
F F T
T
F
T
T T T
This notation is useful especially if the operations are commutative, although one can
additionally specify that the rows are the first operand and the columns are the second
operand. This condensed notation is particularly useful in discussing multi-valued extensions of
logic, as it significantly cuts down on combinatoric explosion of the number of rows otherwise
needed. It also provides for quickly recognizable characteristic "shape" of the distribution of the
values in the table which can assist the reader in grasping the rules more quickly.
Truth tables in digital logic
Truth tables are also used to specify the functionality of hardware look-up tables (LUTs) in digital
logic circuitry. For an n-input LUT, the truth table will have 2^n values (or rows in the above
tabular format), completely specifying a boolean function for the LUT. By representing each
boolean value as a bit in a binary number, truth table values can be efficiently encoded as
integer values in electronic design automation (EDA) software. For example, a 32-bit integer can
encode the truth table for a LUT with up to 5 inputs.
When using an integer representation of a truth table, the output value of the LUT can be
obtained by calculating a bit index k based on the input values of the LUT, in which case the
LUT's output value is the kth bit of the integer. For example, to evaluate the output value of a
LUT given an array of n boolean input values, the bit index of the truth table's output value can
be computed as follows: if the ith input is true, let Vi = 1, else let Vi = 0. Then the kth bit of the
binary representation of the truth table is the LUT's output value, where k = V0*2^0 + V1*2^1 +
V2*2^2 + ... + Vn*2^n.
Truth tables are a simple and straightforward way to encode boolean functions, however given
the exponential growth in size as the number of inputs increase, they are not suitable for
functions with a large number of inputs. Other representations which are more memory
efficient are text equations and binary decision diagrams.
Logical Tree Explanation:
Example: The formula
has the following resolution refutation tree:
The order in which clauses are selected to compute the resolvent matters when computing the
resolution refutation tree,
as the following example shows: Consider the formula
.
Even though a resolution refutation tree may exist for ψ, order is important when trying to build
the tree. Below are two different resolution refutation trees, but only one is successful:
Unsuccessful attempt of resolution refutation tree for ψ.
A successful resolution refutation tree for ψ.
Important Note:
Our propositional calculus has ten inference rules. These rules allow us to derive other
true formulae given a set of formulae that are assumed to be true. The first nine simply
state that we can infer certain wffs from other wffs. The last rule however uses
hypothetical reasoning in the sense that in the premise of the rule we temporarily assume
an (unproven) hypothesis to be part of the set of inferred formulae to see if we can infer a
certain other formula. Since the first nine rules don't do this they are usually described as
non-hypothetical rules, and the last one as a hypothetical rule.
Reductio ad absurdum (negation introduction)
, if accepting (q) leads to a proof that
From
Double negative elimination
From
, infer p.
Conjunction introduction
From p and q, infer
.
From p and q, infer
.
Conjunction elimination
From
, infer p
From
, infer q.
Disjunction introduction
, infer
.
From p, infer
From p, infer
.
Disjunction elimination
From
,
, infer r.
,
Biconditional introduction
From
,
, infer
.
Biconditional elimination
From
, infer
;
From
, infer
.
Modus ponens (conditional elimination)
From p,
, infer q.
Conditional proof (conditional introduction)
If accepting p allows a proof of q, infer
.
Basic and Derived Argument Forms
Name
Modus Ponens
Modus Tollens
Sequent
Description
If p then q; p;
therefore q
If p then q; not q;
therefore not p
If p then q; if q then
Hypothetical
Syllogism
r; therefore, if p
then r
Either p or q, or
Disjunctive
Syllogism
both; not p;
therefore, q
If p then q; and if r
Constructive
Dilemma
then s; but p or r;
therefore q or s
If p then q; and if r
Destructive
Dilemma
then s; but not q or
not s; therefore not
p or not r
Bidirectional
Dilemma
If p then q; and if r
then s; but p or not
s; therefore q or not
r
Simplification
p and q are true;
therefore p is true
p and q are true
Conjunction
Addition
separately; therefore
they are true
conjointly
p is true; therefore
the disjunction (p or
q) is true
If p then q; and if p
Composition
then r; therefore if p
is true then q and r
are true
The negation of (p
De Morgan's
Theorem (1)
and q) is equiv. to
(not p or not q)
The negation of (p or
De Morgan's
Theorem (2)
Commutation
(1)
q) is equiv. to (not p
and not q)
(p or q) is equiv. to
(q or p)
Commutation
(2)
(p and q) is equiv. to
(q and p)
(p is equiv. to q) is
Commutation
(3)
equiv. to (q is equiv.
to p)
Association (1)
p or (q or r) is equiv.
to (p or q) or r
Association (2)
p and (q and r) is
equiv. to (p and q)
and r
Distribution
(1)
p and (q or r) is
equiv. to (p and q)
or (p and r)
Distribution
(2)
p or (q and r) is
equiv. to (p or q)
and (p or r)
Double
Negation
p is equivalent to the
negation of not p
If p then q is equiv.
Transposition
to if not q then not
p
Material
Implication
If p then q is equiv.
to not p or q
(p is equiv. to q)
Material
Equivalence
(1)
means (if p is true
then q is true) and (if
q is true then p is
true)
(p is equiv. to q)
Material
Equivalence
(2)
means either (p and
q are true) or (both
p and q are false)
(p is equiv. to q)
Material
Equivalence
(3)
means, both (p or
not q is true) and
(not p or q is true)
from (if p and q are
true then r is true)
Exportation
we can prove (if q is
true then r is true, if
p is true)
Importation
Tautology (1)
p is true is equiv. to
p is true or p is true
Tautology (2)
p is true is equiv. to
p is true and p is
true
Tertium non
datur (Law of
Excluded
Middle)
Law of NonContradiction
p or not p is true
p and not p is false,
is a true statement