Proof of Theorem eqifdc
| Step | Hyp | Ref
| Expression |
| 1 | | exmiddc 837 |
. . 3
⊢
(DECID 𝜑 → (𝜑 ∨ ¬ 𝜑)) |
| 2 | | simpr 110 |
. . . . . 6
⊢ ((𝐴 = if(𝜑, 𝐵, 𝐶) ∧ 𝜑) → 𝜑) |
| 3 | | simpl 109 |
. . . . . . 7
⊢ ((𝐴 = if(𝜑, 𝐵, 𝐶) ∧ 𝜑) → 𝐴 = if(𝜑, 𝐵, 𝐶)) |
| 4 | 2 | iftrued 3569 |
. . . . . . 7
⊢ ((𝐴 = if(𝜑, 𝐵, 𝐶) ∧ 𝜑) → if(𝜑, 𝐵, 𝐶) = 𝐵) |
| 5 | 3, 4 | eqtrd 2229 |
. . . . . 6
⊢ ((𝐴 = if(𝜑, 𝐵, 𝐶) ∧ 𝜑) → 𝐴 = 𝐵) |
| 6 | 2, 5 | jca 306 |
. . . . 5
⊢ ((𝐴 = if(𝜑, 𝐵, 𝐶) ∧ 𝜑) → (𝜑 ∧ 𝐴 = 𝐵)) |
| 7 | 6 | ex 115 |
. . . 4
⊢ (𝐴 = if(𝜑, 𝐵, 𝐶) → (𝜑 → (𝜑 ∧ 𝐴 = 𝐵))) |
| 8 | | simpr 110 |
. . . . . 6
⊢ ((𝐴 = if(𝜑, 𝐵, 𝐶) ∧ ¬ 𝜑) → ¬ 𝜑) |
| 9 | | simpl 109 |
. . . . . . 7
⊢ ((𝐴 = if(𝜑, 𝐵, 𝐶) ∧ ¬ 𝜑) → 𝐴 = if(𝜑, 𝐵, 𝐶)) |
| 10 | 8 | iffalsed 3572 |
. . . . . . 7
⊢ ((𝐴 = if(𝜑, 𝐵, 𝐶) ∧ ¬ 𝜑) → if(𝜑, 𝐵, 𝐶) = 𝐶) |
| 11 | 9, 10 | eqtrd 2229 |
. . . . . 6
⊢ ((𝐴 = if(𝜑, 𝐵, 𝐶) ∧ ¬ 𝜑) → 𝐴 = 𝐶) |
| 12 | 8, 11 | jca 306 |
. . . . 5
⊢ ((𝐴 = if(𝜑, 𝐵, 𝐶) ∧ ¬ 𝜑) → (¬ 𝜑 ∧ 𝐴 = 𝐶)) |
| 13 | 12 | ex 115 |
. . . 4
⊢ (𝐴 = if(𝜑, 𝐵, 𝐶) → (¬ 𝜑 → (¬ 𝜑 ∧ 𝐴 = 𝐶))) |
| 14 | 7, 13 | orim12d 787 |
. . 3
⊢ (𝐴 = if(𝜑, 𝐵, 𝐶) → ((𝜑 ∨ ¬ 𝜑) → ((𝜑 ∧ 𝐴 = 𝐵) ∨ (¬ 𝜑 ∧ 𝐴 = 𝐶)))) |
| 15 | 1, 14 | syl5com 29 |
. 2
⊢
(DECID 𝜑 → (𝐴 = if(𝜑, 𝐵, 𝐶) → ((𝜑 ∧ 𝐴 = 𝐵) ∨ (¬ 𝜑 ∧ 𝐴 = 𝐶)))) |
| 16 | | simpr 110 |
. . . 4
⊢ ((𝜑 ∧ 𝐴 = 𝐵) → 𝐴 = 𝐵) |
| 17 | | simpl 109 |
. . . . 5
⊢ ((𝜑 ∧ 𝐴 = 𝐵) → 𝜑) |
| 18 | 17 | iftrued 3569 |
. . . 4
⊢ ((𝜑 ∧ 𝐴 = 𝐵) → if(𝜑, 𝐵, 𝐶) = 𝐵) |
| 19 | 16, 18 | eqtr4d 2232 |
. . 3
⊢ ((𝜑 ∧ 𝐴 = 𝐵) → 𝐴 = if(𝜑, 𝐵, 𝐶)) |
| 20 | | simpr 110 |
. . . 4
⊢ ((¬
𝜑 ∧ 𝐴 = 𝐶) → 𝐴 = 𝐶) |
| 21 | | simpl 109 |
. . . . 5
⊢ ((¬
𝜑 ∧ 𝐴 = 𝐶) → ¬ 𝜑) |
| 22 | 21 | iffalsed 3572 |
. . . 4
⊢ ((¬
𝜑 ∧ 𝐴 = 𝐶) → if(𝜑, 𝐵, 𝐶) = 𝐶) |
| 23 | 20, 22 | eqtr4d 2232 |
. . 3
⊢ ((¬
𝜑 ∧ 𝐴 = 𝐶) → 𝐴 = if(𝜑, 𝐵, 𝐶)) |
| 24 | 19, 23 | jaoi 717 |
. 2
⊢ (((𝜑 ∧ 𝐴 = 𝐵) ∨ (¬ 𝜑 ∧ 𝐴 = 𝐶)) → 𝐴 = if(𝜑, 𝐵, 𝐶)) |
| 25 | 15, 24 | impbid1 142 |
1
⊢
(DECID 𝜑 → (𝐴 = if(𝜑, 𝐵, 𝐶) ↔ ((𝜑 ∧ 𝐴 = 𝐵) ∨ (¬ 𝜑 ∧ 𝐴 = 𝐶)))) |