MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  df-bi Structured version   Visualization version   Unicode version

Definition df-bi 197
Description: Define the biconditional (logical 'iff').

The definition df-bi 197 in this section is our first definition, which introduces and defines the biconditional connective  <->. We define a wff of the form  ( ph  <->  ps ) as an abbreviation for  -.  ( (
ph  ->  ps )  ->  -.  ( ps  ->  ph )
).

Unlike most traditional developments, we have chosen not to have a separate symbol such as "Df." to mean "is defined as." Instead, we will later use the biconditional connective for this purpose (df-or 385 is its first use), as it allows us to use logic to manipulate definitions directly. This greatly simplifies many proofs since it eliminates the need for a separate mechanism for introducing and eliminating definitions. Of course, we cannot use this mechanism to define the biconditional itself, since it hasn't been introduced yet. Instead, we use a more general form of definition, described as follows.

In its most general form, a definition is simply an assertion that introduces a new symbol (or a new combination of existing symbols, as in df-3an 1039) that is eliminable and does not strengthen the existing language. The latter requirement means that the set of provable statements not containing the new symbol (or new combination) should remain exactly the same after the definition is introduced. Our definition of the biconditional may look unusual compared to most definitions, but it strictly satisfies these requirements.

The justification for our definition is that if we mechanically replace  ( ph  <->  ps ) (the definiendum i.e. the thing being defined) with  -.  ( (
ph  ->  ps )  ->  -.  ( ps  ->  ph )
) (the definiens i.e. the defining expression) in the definition, the definition becomes the previously proved theorem bijust 195. It is impossible to use df-bi 197 to prove any statement expressed in the original language that can't be proved from the original axioms, because if we simply replace each instance of df-bi 197 in the proof with the corresponding bijust 195 instance, we will end up with a proof from the original axioms.

Note that from Metamath's point of view, a definition is just another axiom - i.e. an assertion we claim to be true - but from our high level point of view, we are not strengthening the language. To indicate this fact, we prefix definition labels with "df-" instead of "ax-". (This prefixing is an informal convention that means nothing to the Metamath proof verifier; it is just a naming convention for human readability.)

After we define the constant true T. (df-tru 1486) and the constant false F. (df-fal 1489), we will be able to prove these truth table values:  ( ( T.  <-> T.  )  <-> T.  ) (trubitru 1520),  ( ( T. 
<-> F.  )  <-> F.  ) (trubifal 1522), 
( ( F.  <-> T.  )  <-> F.  ) (falbitru 1521), and  ( ( F.  <-> F.  )  <-> T.  ) (falbifal 1523).

See dfbi1 203, dfbi2 660, and dfbi3 994 for theorems suggesting typical textbook definitions of  <->, showing that our definition has the properties we expect. Theorem dfbi1 203 is particularly useful if we want to eliminate 
<-> from an expression to convert it to primitives. Theorem dfbi 661 shows this definition rewritten in an abbreviated form after conjunction is introduced, for easier understanding.

Contrast with  \/ (df-or 385), 
-> (wi 4),  -/\ (df-nan 1448), and  \/_ (df-xor 1465) . In some sense  <-> returns true if two truth values are equal;  = (df-cleq 2615) returns true if two classes are equal. (Contributed by NM, 27-Dec-1992.)

Assertion
Ref Expression
df-bi  |-  -.  (
( ( ph  <->  ps )  ->  -.  ( ( ph  ->  ps )  ->  -.  ( ps  ->  ph )
) )  ->  -.  ( -.  ( ( ph  ->  ps )  ->  -.  ( ps  ->  ph )
)  ->  ( ph  <->  ps ) ) )

Detailed syntax breakdown of Definition df-bi
StepHypRef Expression
1 wph . . . . 5  wff  ph
2 wps . . . . 5  wff  ps
31, 2wb 196 . . . 4  wff  ( ph  <->  ps )
41, 2wi 4 . . . . . 6  wff  ( ph  ->  ps )
52, 1wi 4 . . . . . . 7  wff  ( ps 
->  ph )
65wn 3 . . . . . 6  wff  -.  ( ps  ->  ph )
74, 6wi 4 . . . . 5  wff  ( (
ph  ->  ps )  ->  -.  ( ps  ->  ph )
)
87wn 3 . . . 4  wff  -.  (
( ph  ->  ps )  ->  -.  ( ps  ->  ph ) )
93, 8wi 4 . . 3  wff  ( (
ph 
<->  ps )  ->  -.  ( ( ph  ->  ps )  ->  -.  ( ps  ->  ph ) ) )
108, 3wi 4 . . . 4  wff  ( -.  ( ( ph  ->  ps )  ->  -.  ( ps  ->  ph ) )  -> 
( ph  <->  ps ) )
1110wn 3 . . 3  wff  -.  ( -.  ( ( ph  ->  ps )  ->  -.  ( ps  ->  ph ) )  -> 
( ph  <->  ps ) )
129, 11wi 4 . 2  wff  ( ( ( ph  <->  ps )  ->  -.  ( ( ph  ->  ps )  ->  -.  ( ps  ->  ph )
) )  ->  -.  ( -.  ( ( ph  ->  ps )  ->  -.  ( ps  ->  ph )
)  ->  ( ph  <->  ps ) ) )
1312wn 3 1  wff  -.  (
( ( ph  <->  ps )  ->  -.  ( ( ph  ->  ps )  ->  -.  ( ps  ->  ph )
) )  ->  -.  ( -.  ( ( ph  ->  ps )  ->  -.  ( ps  ->  ph )
)  ->  ( ph  <->  ps ) ) )
Colors of variables: wff setvar class
This definition is referenced by:  impbi  198  dfbi1  203  dfbi1ALT  204  biimp  205
  Copyright terms: Public domain W3C validator