NFE Home New Foundations Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  NFE Home  >  Th. List  >  cadan GIF version

Theorem cadan 1392
Description: Write the adder carry in conjunctive normal form. (Contributed by Mario Carneiro, 4-Sep-2016.)
Assertion
Ref Expression
cadan ⊢ (cadd(φ, ψ, χ) ↔ ((φ ∨ ψ) ∧ (φ ∨ χ) ∧ (ψ ∨ χ)))

Proof of Theorem cadan
StepHypRef Expression
1 ordi 834 . . . 4 ⊢ ((((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ (ψ ∧ χ)) ↔ ((((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ ψ) ∧ (((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ χ)))
2 ordir 835 . . . . . 6 ⊢ (((φ ∧ χ) ∨ ψ) ↔ ((φ ∨ ψ) ∧ (χ ∨ ψ)))
3 simpr 447 . . . . . . . . . . 11 ⊢ ((φ ∧ ψ) → ψ)
43con3i 127 . . . . . . . . . 10 ⊢ (¬ ψ → ¬ (φ ∧ ψ))
5 biorf 394 . . . . . . . . . 10 ⊢ (¬ (φ ∧ ψ) → ((φ ∧ χ) ↔ ((φ ∧ ψ) ∨ (φ ∧ χ))))
64, 5syl 15 . . . . . . . . 9 ⊢ (¬ ψ → ((φ ∧ χ) ↔ ((φ ∧ ψ) ∨ (φ ∧ χ))))
76pm5.74i 236 . . . . . . . 8 ⊢ ((¬ ψ → (φ ∧ χ)) ↔ (¬ ψ → ((φ ∧ ψ) ∨ (φ ∧ χ))))
8 df-or 359 . . . . . . . 8 ⊢ ((ψ ∨ (φ ∧ χ)) ↔ (¬ ψ → (φ ∧ χ)))
9 df-or 359 . . . . . . . 8 ⊢ ((ψ ∨ ((φ ∧ ψ) ∨ (φ ∧ χ))) ↔ (¬ ψ → ((φ ∧ ψ) ∨ (φ ∧ χ))))
107, 8, 93bitr4i 268 . . . . . . 7 ⊢ ((ψ ∨ (φ ∧ χ)) ↔ (ψ ∨ ((φ ∧ ψ) ∨ (φ ∧ χ))))
11 orcom 376 . . . . . . 7 ⊢ (((φ ∧ χ) ∨ ψ) ↔ (ψ ∨ (φ ∧ χ)))
12 orcom 376 . . . . . . 7 ⊢ ((((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ ψ) ↔ (ψ ∨ ((φ ∧ ψ) ∨ (φ ∧ χ))))
1310, 11, 123bitr4i 268 . . . . . 6 ⊢ (((φ ∧ χ) ∨ ψ) ↔ (((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ ψ))
14 orcom 376 . . . . . . 7 ⊢ ((χ ∨ ψ) ↔ (ψ ∨ χ))
1514anbi2i 675 . . . . . 6 ⊢ (((φ ∨ ψ) ∧ (χ ∨ ψ)) ↔ ((φ ∨ ψ) ∧ (ψ ∨ χ)))
162, 13, 153bitr3i 266 . . . . 5 ⊢ ((((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ ψ) ↔ ((φ ∨ ψ) ∧ (ψ ∨ χ)))
17 simpr 447 . . . . . . . . . . 11 ⊢ ((φ ∧ χ) → χ)
1817con3i 127 . . . . . . . . . 10 ⊢ (¬ χ → ¬ (φ ∧ χ))
19 biorf 394 . . . . . . . . . . 11 ⊢ (¬ (φ ∧ χ) → ((φ ∧ ψ) ↔ ((φ ∧ χ) ∨ (φ ∧ ψ))))
20 orcom 376 . . . . . . . . . . 11 ⊢ (((φ ∧ χ) ∨ (φ ∧ ψ)) ↔ ((φ ∧ ψ) ∨ (φ ∧ χ)))
2119, 20syl6bb 252 . . . . . . . . . 10 ⊢ (¬ (φ ∧ χ) → ((φ ∧ ψ) ↔ ((φ ∧ ψ) ∨ (φ ∧ χ))))
2218, 21syl 15 . . . . . . . . 9 ⊢ (¬ χ → ((φ ∧ ψ) ↔ ((φ ∧ ψ) ∨ (φ ∧ χ))))
2322pm5.74i 236 . . . . . . . 8 ⊢ ((¬ χ → (φ ∧ ψ)) ↔ (¬ χ → ((φ ∧ ψ) ∨ (φ ∧ χ))))
24 df-or 359 . . . . . . . 8 ⊢ ((χ ∨ (φ ∧ ψ)) ↔ (¬ χ → (φ ∧ ψ)))
25 df-or 359 . . . . . . . 8 ⊢ ((χ ∨ ((φ ∧ ψ) ∨ (φ ∧ χ))) ↔ (¬ χ → ((φ ∧ ψ) ∨ (φ ∧ χ))))
2623, 24, 253bitr4i 268 . . . . . . 7 ⊢ ((χ ∨ (φ ∧ ψ)) ↔ (χ ∨ ((φ ∧ ψ) ∨ (φ ∧ χ))))
27 orcom 376 . . . . . . 7 ⊢ (((φ ∧ ψ) ∨ χ) ↔ (χ ∨ (φ ∧ ψ)))
28 orcom 376 . . . . . . 7 ⊢ ((((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ χ) ↔ (χ ∨ ((φ ∧ ψ) ∨ (φ ∧ χ))))
2926, 27, 283bitr4i 268 . . . . . 6 ⊢ (((φ ∧ ψ) ∨ χ) ↔ (((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ χ))
30 ordir 835 . . . . . 6 ⊢ (((φ ∧ ψ) ∨ χ) ↔ ((φ ∨ χ) ∧ (ψ ∨ χ)))
3129, 30bitr3i 242 . . . . 5 ⊢ ((((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ χ) ↔ ((φ ∨ χ) ∧ (ψ ∨ χ)))
3216, 31anbi12i 678 . . . 4 ⊢ (((((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ ψ) ∧ (((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ χ)) ↔ (((φ ∨ ψ) ∧ (ψ ∨ χ)) ∧ ((φ ∨ χ) ∧ (ψ ∨ χ))))
331, 32bitri 240 . . 3 ⊢ ((((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ (ψ ∧ χ)) ↔ (((φ ∨ ψ) ∧ (ψ ∨ χ)) ∧ ((φ ∨ χ) ∧ (ψ ∨ χ))))
34 df-3or 935 . . 3 ⊢ (((φ ∧ ψ) ∨ (φ ∧ χ) ∨ (ψ ∧ χ)) ↔ (((φ ∧ ψ) ∨ (φ ∧ χ)) ∨ (ψ ∧ χ)))
35 anandir 802 . . 3 ⊢ ((((φ ∨ ψ) ∧ (φ ∨ χ)) ∧ (ψ ∨ χ)) ↔ (((φ ∨ ψ) ∧ (ψ ∨ χ)) ∧ ((φ ∨ χ) ∧ (ψ ∨ χ))))
3633, 34, 353bitr4i 268 . 2 ⊢ (((φ ∧ ψ) ∨ (φ ∧ χ) ∨ (ψ ∧ χ)) ↔ (((φ ∨ ψ) ∧ (φ ∨ χ)) ∧ (ψ ∨ χ)))
37 cador 1391 . 2 ⊢ (cadd(φ, ψ, χ) ↔ ((φ ∧ ψ) ∨ (φ ∧ χ) ∨ (ψ ∧ χ)))
38 df-3an 936 . 2 ⊢ (((φ ∨ ψ) ∧ (φ ∨ χ) ∧ (ψ ∨ χ)) ↔ (((φ ∨ ψ) ∧ (φ ∨ χ)) ∧ (ψ ∨ χ)))
3936, 37, 383bitr4i 268 1 ⊢ (cadd(φ, ψ, χ) ↔ ((φ ∨ ψ) ∧ (φ ∨ χ) ∧ (ψ ∨ χ)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 176   ∨ wo 357   ∧ wa 358   ∨ w3o 933   ∧ w3a 934  caddwcad 1379
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8
This proof depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3or 935  df-3an 936  df-xor 1305  df-cad 1381
This theorem is used by:  cadnot  1394
  Copyright terms: Public domain W3C validator