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

Theorem cadan 1548
Description: The adder carry in conjunctive normal form. (Contributed by Mario Carneiro, 4-Sep-2016.) (Proof shortened by Wolf Lammen, 25-Sep-2018.)
Assertion
Ref Expression
cadan  |-  (cadd (
ph ,  ps ,  ch )  <->  ( ( ph  \/  ps )  /\  ( ph  \/  ch )  /\  ( ps  \/  ch ) ) )

Proof of Theorem cadan
StepHypRef Expression
1 df-3or 1038 . . . 4  |-  ( ( ( ph  /\  ps )  \/  ( ph  /\ 
ch )  \/  ( ps  /\  ch ) )  <-> 
( ( ( ph  /\ 
ps )  \/  ( ph  /\  ch ) )  \/  ( ps  /\  ch ) ) )
2 cador 1547 . . . 4  |-  (cadd (
ph ,  ps ,  ch )  <->  ( ( ph  /\ 
ps )  \/  ( ph  /\  ch )  \/  ( ps  /\  ch ) ) )
3 andi 911 . . . . 5  |-  ( (
ph  /\  ( ps  \/  ch ) )  <->  ( ( ph  /\  ps )  \/  ( ph  /\  ch ) ) )
43orbi1i 542 . . . 4  |-  ( ( ( ph  /\  ( ps  \/  ch ) )  \/  ( ps  /\  ch ) )  <->  ( (
( ph  /\  ps )  \/  ( ph  /\  ch ) )  \/  ( ps  /\  ch ) ) )
51, 2, 43bitr4i 292 . . 3  |-  (cadd (
ph ,  ps ,  ch )  <->  ( ( ph  /\  ( ps  \/  ch ) )  \/  ( ps  /\  ch ) ) )
6 ordir 909 . . 3  |-  ( ( ( ph  /\  ( ps  \/  ch ) )  \/  ( ps  /\  ch ) )  <->  ( ( ph  \/  ( ps  /\  ch ) )  /\  (
( ps  \/  ch )  \/  ( ps  /\ 
ch ) ) ) )
7 ordi 908 . . . 4  |-  ( (
ph  \/  ( ps  /\ 
ch ) )  <->  ( ( ph  \/  ps )  /\  ( ph  \/  ch )
) )
8 orcom 402 . . . . 5  |-  ( ( ( ps  \/  ch )  \/  ( ps  /\ 
ch ) )  <->  ( ( ps  /\  ch )  \/  ( ps  \/  ch ) ) )
9 animorl 505 . . . . . 6  |-  ( ( ps  /\  ch )  ->  ( ps  \/  ch ) )
10 pm4.72 920 . . . . . 6  |-  ( ( ( ps  /\  ch )  ->  ( ps  \/  ch ) )  <->  ( ( ps  \/  ch )  <->  ( ( ps  /\  ch )  \/  ( ps  \/  ch ) ) ) )
119, 10mpbi 220 . . . . 5  |-  ( ( ps  \/  ch )  <->  ( ( ps  /\  ch )  \/  ( ps  \/  ch ) ) )
128, 11bitr4i 267 . . . 4  |-  ( ( ( ps  \/  ch )  \/  ( ps  /\ 
ch ) )  <->  ( ps  \/  ch ) )
137, 12anbi12i 733 . . 3  |-  ( ( ( ph  \/  ( ps  /\  ch ) )  /\  ( ( ps  \/  ch )  \/  ( ps  /\  ch ) ) )  <->  ( (
( ph  \/  ps )  /\  ( ph  \/  ch ) )  /\  ( ps  \/  ch ) ) )
145, 6, 133bitri 286 . 2  |-  (cadd (
ph ,  ps ,  ch )  <->  ( ( (
ph  \/  ps )  /\  ( ph  \/  ch ) )  /\  ( ps  \/  ch ) ) )
15 df-3an 1039 . 2  |-  ( ( ( ph  \/  ps )  /\  ( ph  \/  ch )  /\  ( ps  \/  ch ) )  <-> 
( ( ( ph  \/  ps )  /\  ( ph  \/  ch ) )  /\  ( ps  \/  ch ) ) )
1614, 15bitr4i 267 1  |-  (cadd (
ph ,  ps ,  ch )  <->  ( ( ph  \/  ps )  /\  ( ph  \/  ch )  /\  ( ps  \/  ch ) ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 196    \/ wo 383    /\ wa 384    \/ w3o 1036    /\ w3a 1037  caddwcad 1545
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1038  df-3an 1039  df-xor 1465  df-cad 1546
This theorem is referenced by:  cadcomb  1552  cadnot  1554  cad1  1555
  Copyright terms: Public domain W3C validator