Conditioned disjunction

From testwiki
Jump to navigation Jump to search

Template:Infobox logical connective

In logic, conditioned disjunction (sometimes called conditional disjunction) is a ternary logical connective introduced by Church.[1][2] Given operands p, q, and r, which represent truth-valued propositions, the meaning of the conditioned disjunction Template:Nowrap is given by

[p,q,r](qp)(¬qr).

In words, Template:Nowrap is equivalent to: "if q, then p, else r", or "p or r, according as q or not q". This may also be stated as "q implies p, and not q implies r". So, for any values of p, q, and r, the value of Template:Nowrap is the value of p when q is true, and is the value of r otherwise.

The conditioned disjunction is also equivalent to

(qp)(¬qr)

and has the same truth table as the ternary conditional operator ?: in many programming languages (with [b,a,c] being equivalent to a ? b : c). In electronic logic terms, it may also be viewed as a single-bit multiplexer.

In conjunction with truth constants denoting each truth-value, conditioned disjunction is truth-functionally complete for classical logic.[3] There are other truth-functionally complete ternary connectives.

Truth table

The truth table for [p,q,r]:

p q r [p,q,r]
Template:Yes2 Template:Yes2 Template:Yes2 Template:Yes2
Template:Yes2 Template:Yes2 Template:No2 Template:Yes2
Template:Yes2 Template:No2 Template:Yes2 Template:Yes2
Template:Yes2 Template:No2 Template:No2 Template:No2
Template:No2 Template:Yes2 Template:Yes2 Template:No2
Template:No2 Template:Yes2 Template:No2 Template:No2
Template:No2 Template:No2 Template:Yes2 Template:Yes2
Template:No2 Template:No2 Template:No2 Template:No2

References

Template:Reflist


Template:Logic-stub