جدول ارزش

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به ناوبری پرش به جستجو
فارسیEnglish

در منطق، جدول ارزش یا جدول درستی (Truth table) به جدولی اطلاق می‌شود، که در آن درستی و نادرستی گزاره‌ها درج گردد. منظور از درستی یا صدق در هر گزاره، مطابقت آن با واقع؛ و منظور از نادرستی یا کذب عدم مطابقت آن با واقع است. هر گزاره درست در این جدول‌ها با «د» یا «T» و هر گزاره غلط با «ن» یا «F» نشان داده می‌شود.

عملگرهای یگانی(تک ورودی)[ویرایش]

همانی[ویرایش]

عملگر همانی ورودی را بدون تغیر به خروجی می برد.

عملگر همانی
p p
د د
ن ن

نقیض[ویرایش]

نقیض عملگری است که هرگاه قضیه‌ای (گزاره‌ای) صادق و درست باشد، آن را به قضیه‌ای کاذب و نادرست تبدیل خواهد کرد. معمولاً نقیض گزاره p را با عبارت « ~p» یا « p» نشان می‌دهند که خوانده می‌شود « نه p » یا « چنین نیست که p ».

تناقض منطقی
p p
د ن
ن د

عملگرهای دودویی[ویرایش]

جدول درستی برای تمام توابع دودویی[ویرایش]

در اینجا جدول عملگرهای دودویی برای 16 تابع ممکن امده است

P Q F NOR Xq XOR NAND AND XNOR q IF/Then p Then/IF OR T
د د ن ن ن ن ن ن ن ن د د د د د د د د
د ن ن ن ن ن د د د د ن ن ن ن د د د د
ن د ن ن د د ن ن د د ن ن د د ن ن د د
ن ن ن د ن د ن د ن د ن د ن د ن د ن د

کلید:

نام عملگر
0 Opq F false تناقض
1 Xpq NOR نقیض فصلی
2 Mpq Xq Converse nonimplication
3 Fpq Np ¬p نقیض
4 Lpq Xp Material nonimplication
5 Gpq Nq ¬q نقیض
6 Jpq XOR ترکیبفصلی ضمنی
7 Dpq NAND نقیض عطفی
8 Kpq AND ترکیب عطفی
9 Epq XNOR اگر و تنها اگر نقیض فصلی ضمنی
10 Hpq q Projection function
11 Cpq XNp if/then ترکیب شرطی
12 Ipq p Projection function
13 Bpq XNq then/if ترکیب دوشرطی
14 Apq OR ترکیب فصلی
15 Vpq T true راستگو

ترکیب عطفی(AND)[ویرایش]

عملگری است که در آن دو قضیه به وسیله حرف عطف «و» با هم ترکیب می‌شوند. قضیه حاصل از ترکیب عطفی درست خواهد بود؛ اگر و فقط اگر هر دوی قضایای ساده تشکیل‌دهنده آن درست باشند. ترکیب عطفی p و q چنین نوشته می‌شود «p.q»

ترکیب عطفی
p q p ∧ q
د د د
د ن ن
ن د ن
ن ن ن

q و p اگر هر دو درست باشند، ترکیب عطفی p ∧ q درست است؛ اگر یکی از قضایای p و q یا هر دو نادرست باشند، آن گاه ترکیب عطفی p ∧ q نادرست است.

ترکیب فصلی(OR)[ویرایش]

هرگاه دو قضیه حملی ساده را با حرف «یا» ترکیب کنیم، قضیه مرکب تشکیل شده را ترکیب فصلی می‌نامند. تنها وقتی قضیه حاصل از ترکیب فصلی، نادرست خواهد بود که هر دو قضیه تشکیل‌دهنده آن نادرست باشد. ترکیب فصلی را به صورت « p ∨ q» یا « p || q» یا « p + q» نشان می‌دهند، و خوانده می‌شود: « p یا q»

ترکیب فصلی
p q p ∨ q
د د د
د ن د
ن د د
ن ن ن

ترکیب شرطی(IF)[ویرایش]

در ترکیب شرطی به صدق قضیه دوم در فرض صدق قضیه اول و کذب قضیه دوم حکم می‌شود. در ترکیب شرطی، قضیه اول را مقدم و قضیه دوم را تالی می‌گویند. ترکیب شرطی به صورت « p → q» یا « p ⇒ q» و خوانده می‌شود « اگر p آنگاه q» یا « p ایجاب می‌کند q را»

ترکیب شرطی
p q p → q
د د د
د ن ن
ن د د
ن ن د

ترکیب دو شرطی(IF ONLY IF)[ویرایش]

ترکیب دوشرطی برابری منطقی است و از دو ترکیب شرطی تشکیل می‌شود، که مقدم و تالی یکی از آن‌ها، به ترتیب مقدم و تالی دیگری باشد.ارزش ترکیب دوشرطی درست خواهد بود، اگر و فقط اگر، هر دو قضیه تشکیل‌دهنده ترکیب دوشرطی صادق یا کاذب باشند. ترکیب دوشرطی نوشته می‌شود: ، p ↔ q یا p ≡ q و خوانده می‌شود: « اگر و فقط اگر p آنگاه q» یا « q شرط لازم و کافی‌است برای p»

ترکیب دوشرطی
p q p ≡ q
د د د
د ن ن
ن د ن
ن ن د

ترکیب فصلی ضمنی(XOR)[ویرایش]

در ترکیب فصلی ضمنی، ارزش دو گزاره در این ترکیب درست خواهد بود، اگر و فقط اگر یکی از اجزای آن درست باشد، و نه هر دوی آن. ترکیب فصلی ضمنی را با علامت p ⊕ q نشان می‌دهند.

ترکیب فصلی ضمنی
p q p ⊕ q
د د ن
د ن د
ن د د
ن ن ن

عملگر NAND[ویرایش]

این عملگر دو عملوند دارد و فقط در حالتی نادرست است که هر دو عملوند درست باشند. آن را با ↑ نشان می‌دهند.

عملگر NAND
p q pq
د د ن
د ن د
ن د د
ن ن د

این عملگر هم ارز با (p ∧ q)¬ و (p) ∨ (¬q¬) است.

p q p ∧ q (p ∧ q (p) ∨ (¬q¬)
د د د ن ن ن ن
د ن ن د ن د د
ن د ن د د ن د
ن ن ن د د د د

عملگر NOR[ویرایش]

عملگر NOR دو عملوند دارد و فقط در حالتی درست است که هر دو عملوند نادرست باشند. آن را با ↓ نشان می‌دهند.

عملگر NOR
p q pq
د د ن
د ن ن
ن د ن
ن ن د

این عملگر با (p ∨ q)¬ و (p) ∧ (¬q¬) هم ارز است.

p q p ∨ q (p ∨ q (p) ∧ (¬q¬)
د د د ن ن ن ن
د ن د ن ن د ن
ن د د ن د ن ن
ن ن ن د د د د

کاربرهای جدول درستی[ویرایش]

از جدول درستی میتوان برای اثبات روابط منطقی استفاده کرد. مثلاً :

(pq) = (¬pq)
p q p pq
د د ن د د
د ن ن ن ن
ن د د د د
ن ن د د د

جدول درستی برای توابع پرکاربرد[ویرایش]

در زیر جدول درستی برای 6 تابع پرکاربرد امده است.

د د د د ن د د د د
د ن ن د د ن ن د ن
ن د ن د د ن د ن ن
ن ن ن ن ن د د د د

کاربرد جدول درستی در مدارهای منطقی[ویرایش]

در مدارهای منطقی از جدول درستی استفاده می‌کنند تا ارتباط ورودی وو خروجی‌ها را به‌طور خلاصه و بدون استفاده از گیت‌ها و کد نشان دهند. برای مثال جدول درستی برای جمع دو عدد باینری یک بیتی در زیر امده است:

A B | C R
1 1 | 1 0
1 0 | 0 1
0 1 | 0 1
0 0 | 0 0

where

A = عملوند اول
B = عملوند دوم
C = نقلی  (Carry)
R = جواب 

توجه کنید که این جدول توابع لازم برای پیاده‌سازی را نشان نمی‌دهد و فقط ارتباط ورودی و خروجی را مشخص می‌کند.

در این حالت می‌توان آن را فقط برای ورودی‌های ساده و خروجی مانند 1 و 0 استفاده کرد و با افزایش تعداد ورودی و خروجی اندازه جدول افزایش می یابد.

مثال بالا را یک نیم جمع‌کننده می نامند. یک تمام جمع‌کننده علاوه بر ورودی‌های بالا یک نقلی ورودی C* نیز دارد. جدول درستی آن به صورت زیر است:

A B C* | C R
0 0 0  | 0 0
0 1 0  | 0 1
1 0 0  | 0 1
1 1 0  | 1 0
0 0 1  | 0 1
0 1 1  | 1 0
1 0 1  | 1 0
1 1 1  | 1 1

C* = زقم نقلی وروردی 

جستارهای وابسته[ویرایش]

منابع[ویرایش]

A truth table is a mathematical table used in logic—specifically in connection with Boolean algebra, boolean functions, and propositional calculus—which sets out the functional values of logical expressions on each of their functional arguments, that is, for each combination of values taken by their logical variables (Enderton, 2001). In particular, truth tables can be used to show whether a propositional expression is true for all legitimate input values, that is, logically valid.

A truth table has one column for each input variable (for example, P and Q), and one final column showing all of the possible results of the logical operation that the table represents (for example, P XOR Q). Each row of the truth table contains one possible configuration of the input variables (for instance, P=true Q=false), and the result of the operation for those values. See the examples below for further clarification. Ludwig Wittgenstein is generally credited with inventing and popularizing the truth table in his Tractatus Logico-Philosophicus, which was completed in 1918 and published in 1921.[1] Such a system was also independently proposed in 1921 by Emil Leon Post.[2] An even earlier iteration of the truth table has also been found in unpublished manuscripts by Charles Sanders Peirce from 1893, antedating both publications by nearly 30 years.[3]

Unary operations

There are 4 unary operations:

  • Always true
  • Never true, unary falsum
  • Unary Identity
  • Unary negation

Logical true

The output value is always true, regardless of the input value of p

Logical True
p T
T T
F T

Logical false

The output value is never true: that is, always false, regardless of the input value of p

Logical False
p F
T F
F F

Logical identity

Logical identity is an operation on one logical value p, for which the output value remains p.

The truth table for the logical identity operator is as follows:

Logical Identity
p p
T T
F F

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, Np, Fpq, or ~p) is as follows:

Logical Negation
p ¬p
T F
F T

Binary operations

There are 16 possible truth functions of two binary variables:

Truth table for all binary logical operators

Here is an extended truth table giving definitions of all possible truth functions of two Boolean variables P and Q:[note 1]

p q  F0   NOR1   2   ¬p3   4   ¬q5   XOR6   NAND7   AND8   XNOR9  q10 11 p12 13 OR14 T15
T T F F F F F F F F T T T T T T T T
T F F F F F T T T T F F F F T T T T
F T F F T T F F T T F F T T F F T T
F F F T F T F T F T F T F T F T F T
Com
L id F F T T T,F T F
R id F F T T T,F T F

where

T = true.
F = false.
The Com row indicates whether an operator, op, is commutative - P op Q = Q op P.
The L id row shows the operator's left identities if it has any - values I such that I op Q = Q.
The R id row shows the operator's right identities if it has any - values I such that P op I = P.[note 2]

The four combinations of input values for p, q, are read by row from the table above. The output function for each p, q combination, can be read, by row, from the table.

Key:

The following table is oriented by column, rather than by row. There are four columns rather than four rows, to display the four combinations of p, q, as input.

p: T T F F
q: T F T F

There are 16 rows in this key, one row for each binary function of the two binary variables, p, q. For example, in row 2 of this Key, the value of Converse nonimplication ('') is solely T, for the column denoted by the unique combination p=F, q=T; while in row 2, the value of that '' operation is F for the three remaining columns of p, q. The output row for is thus

2: F F T F

and the 16-row[4] key is

[4] operator Operation name
0 (F F F F)(p, q) false, Opq Contradiction
1 (F F F T)(p, q) NOR pq, Xpq Logical NOR
2 (F F T F)(p, q) pq, Mpq Converse nonimplication
3 (F F T T)(p, q) ¬p, ~p ¬p, Np, Fpq Negation
4 (F T F F)(p, q) pq, Lpq Material nonimplication
5 (F T F T)(p, q) ¬q, ~q ¬q, Nq, Gpq Negation
6 (F T T F)(p, q) XOR pq, Jpq Exclusive disjunction
7 (F T T T)(p, q) NAND pq, Dpq Logical NAND
8 (T F F F)(p, q) AND pq, Kpq Logical conjunction
9 (T F F T)(p, q) XNOR p If and only if q, Epq Logical biconditional
10 (T F T F)(p, q) q q, Hpq Projection function
11 (T F T T)(p, q) pq if p then q, Cpq Material implication
12 (T T F F)(p, q) p p, Ipq Projection function
13 (T T F T)(p, q) pq p if q, Bpq Converse implication
14 (T T T F)(p, q) OR pq, Apq Logical disjunction
15 (T T T T)(p, q) true, Vpq Tautology

Logical operators can also be visualized using Venn diagrams.

Logical conjunction (AND)

Logical conjunction is an operation on two logical values, typically the values of two propositions, that produces a value of true if both of its operands are true.

The truth table for p AND q (also written as p ∧ q, Kpq, p & q, or p q) is as follows:

Logical conjunction
p q pq
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 pq 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 pq is q, otherwise pq is p.

Logical disjunction (OR)

Logical disjunction is an operation on two logical values, typically the values of two propositions, that produces a value of true if at least one of its operands is true.

The truth table for p OR q (also written as p ∨ q, Apq, p || q, or p + q) is as follows:

Logical disjunction
p q pq
T T T
T F T
F T T
F F F

Stated in English, if p, then pq is p, otherwise pq 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, which produces a value of false if the first operand is true and the second operand is false, and a value of true otherwise.

The truth table associated with the logical implication p implies q (symbolized as p ⇒ q, or more rarely Cpq) is as follows:

Logical implication
p q pq
T T T
T F F
F T T
F F T

The truth table associated with the material conditional if p then q (symbolized as p → q) is as follows:

Material conditional
p q pq
T T T
T F F
F T T
F F T

It may also be useful to note that p ⇒ q and p → q are equivalent to ¬p ∨ q.

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 both operands are false or both operands are true.

The truth table for p XNOR q (also written as p ↔ q, Epq, p = q, or p ≡ q) is as follows:

Logical equality
p q pq
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 one but not both of its operands is true.

The truth table for p XOR q (also written as p ⊕ q) is as follows:

Exclusive disjunction
p q ¬pv¬q
T T F
T F T
F T T
F F F

For two propositions, XOR can also be written as (p ∧ ¬q) ∨ (¬p ∧ q).

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 both of its operands are true. In other words, it produces a value of true if at least one of its operands is false.

The truth table for p NAND q (also written as p ↑ q, Dpq, or p | q) is as follows:

Logical NAND
p q pq
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 both of its operands are false. In other words, it produces a value of false 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 Xpq) is as follows:

Logical NOR
p q pq
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 :
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 is logically equivalent to .

Truth table for most commonly used logical operators

Here is a truth table that gives definitions of the 6 most commonly used out of the 16 possible truth functions of two Boolean variables P and Q:

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

where

true
false
 
AND (logical conjunction)
 
OR (logical disjunction)
 
XOR (exclusive or)
 
XNOR (exclusive nor)
 
conditional "if-then"
 
conditional "then-if"
 
biconditional "if-and-only-if".

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 F F
T F T
F T
F 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 function 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 , else let . Then the kth bit of the binary representation of the truth table is the LUT's output value, where .

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.

Applications of truth tables in digital electronics

In digital electronics and computer science (fields of applied logic engineering and mathematics), truth tables can be used to reduce basic boolean operations to simple correlations of inputs to outputs, without the use of logic gates or code. For example, a binary addition can be represented with the truth table:

A B | C R
1 1 | 1 0
1 0 | 0 1
0 1 | 0 1
0 0 | 0 0

where

A = First Operand
B = Second Operand
C = Carry
R = Result

This truth table is read left to right:

  • Value pair (A,B) equals value pair (C,R).
  • Or for this example, A plus B equal result R, with the Carry C.

Note that this table does not describe the logic operations necessary to implement this operation, rather it simply specifies the function of inputs to output values.

With respect to the result, this example may be arithmetically viewed as modulo 2 binary addition, and as logically equivalent to the exclusive-or (exclusive disjunction) binary logic operation.

In this case it can be used for only very simple inputs and outputs, such as 1s and 0s. However, if the number of types of values one can have on the inputs increases, the size of the truth table will increase.

For instance, in an addition operation, one needs two operands, A and B. Each can have one of two values, zero or one. The number of combinations of these two values is 2×2, or four. So the result is four possible outputs of C and R. If one were to use base 3, the size would increase to 3×3, or nine possible outputs.

The first "addition" example above is called a half-adder. A full-adder is when the carry from the previous operation is provided as input to the next adder. Thus, a truth table of eight rows would be needed to describe a full adder's logic:

A B C* | C R
0 0 0  | 0 0
0 1 0  | 0 1
1 0 0  | 0 1
1 1 0  | 1 0
0 0 1  | 0 1
0 1 1  | 1 0
1 0 1  | 1 0
1 1 1  | 1 1

Same as previous, but..
C* = Carry from previous adder

History

Irving Anellis’s research shows that C.S. Peirce appears to be the earliest logician (in 1893) to devise a truth table matrix.[3][5] From the summary of his paper:

In 1997, John Shosky discovered, on the verso of a page of the typed transcript of Bertrand Russell's 1912 lecture on "The Philosophy of Logical Atomism" truth table matrices. The matrix for negation is Russell's, alongside of which is the matrix for material implication in the hand of Ludwig Wittgenstein. It is shown that an unpublished manuscript identified as composed by Peirce in 1893 includes a truth table matrix that is equivalent to the matrix for material implication discovered by John Shosky. An unpublished manuscript by Peirce identified as having been composed in 1883–84 in connection with the composition of Peirce's "On the Algebra of Logic: A Contribution to the Philosophy of Notation" that appeared in the American Journal of Mathematics in 1885 includes an example of an indirect truth table for the conditional.

Notes

  1. ^ Information about notation may be found in Bocheński (1959), Enderton (2001), and Quine (1982).
  2. ^ The operators here with equal left and right identities (XOR, AND, XNOR, and OR) are also commutative monoids because they are also associative. While this distinction may be irrelevant in a simple discussion of logic, it can be quite important in more advanced mathematics. For example, in category theory an enriched category is described as a base category enriched over a monoid, and any of these operators can be used for enrichment.

See also

References

  1. ^ Georg Henrik von Wright (1955). "Ludwig Wittgenstein, A Biographical Sketch". The Philosophical Review. 64 (4): 527–545 (p. 532, note 9). doi:10.2307/2182631. JSTOR 2182631.
  2. ^ Emil Post (July 1921). "Introduction to a general theory of elementary propositions". American Journal of Mathematics. 43 (3): 163–185. doi:10.2307/2370324. JSTOR 2370324.
  3. ^ a b Anellis, Irving H. (2012). "Peirce's Truth-functional Analysis and the Origin of the Truth Table". History and Philosophy of Logic. 33: 87–97. doi:10.1080/01445340.2011.621702.
  4. ^ a b Ludwig Wittgenstein (1922) Tractatus Logico-Philosophicus Proposition 5.101
  5. ^ Peirce's publication included the work of Christine Ladd (1881): Peirce's Ph.D. student Christine Ladd-Franklin found the truth table in Tractatus Logico-Philosophicus Proposition 5.101, 40 years earlier than Wittgenstein. Christine Ladd (1881), "On the Algebra of Logic", p.62, Studies in Logic, C. S. Peirce ed., 1883

Further reading

  • Bocheński, Józef Maria (1959), A Précis of Mathematical Logic, translated from the French and German editions by Otto Bird, Dordrecht, South Holland: D. Reidel.
  • Enderton, H. (2001). A Mathematical Introduction to Logic, second edition, New York: Harcourt Academic Press. ISBN 0-12-238452-0
  • Quine, W.V. (1982), Methods of Logic, 4th edition, Cambridge, MA: Harvard University Press.

External links