Proof of Theorem ifnebibdc
Step | Hyp | Ref
| Expression |
1 | | eqifdc 3592 |
. . . 4
⊢
(DECID 𝜓 → (if(𝜑, 𝐴, 𝐵) = if(𝜓, 𝐴, 𝐵) ↔ ((𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐴) ∨ (¬ 𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐵)))) |
2 | 1 | 3ad2ant2 1021 |
. . 3
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → (if(𝜑, 𝐴, 𝐵) = if(𝜓, 𝐴, 𝐵) ↔ ((𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐴) ∨ (¬ 𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐵)))) |
3 | | ifnetruedc 3598 |
. . . . . . . . 9
⊢
((DECID 𝜑 ∧ 𝐴 ≠ 𝐵 ∧ if(𝜑, 𝐴, 𝐵) = 𝐴) → 𝜑) |
4 | 3 | 3expia 1207 |
. . . . . . . 8
⊢
((DECID 𝜑 ∧ 𝐴 ≠ 𝐵) → (if(𝜑, 𝐴, 𝐵) = 𝐴 → 𝜑)) |
5 | 4 | 3adant2 1018 |
. . . . . . 7
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → (if(𝜑, 𝐴, 𝐵) = 𝐴 → 𝜑)) |
6 | 5 | adantld 278 |
. . . . . 6
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → ((𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐴) → 𝜑)) |
7 | | simpl 109 |
. . . . . 6
⊢ ((𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐴) → 𝜓) |
8 | 6, 7 | jca2 308 |
. . . . 5
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → ((𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐴) → (𝜑 ∧ 𝜓))) |
9 | | pm5.1 601 |
. . . . 5
⊢ ((𝜑 ∧ 𝜓) → (𝜑 ↔ 𝜓)) |
10 | 8, 9 | syl6 33 |
. . . 4
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → ((𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐴) → (𝜑 ↔ 𝜓))) |
11 | | ifnefals 3599 |
. . . . . . . . 9
⊢ ((𝐴 ≠ 𝐵 ∧ if(𝜑, 𝐴, 𝐵) = 𝐵) → ¬ 𝜑) |
12 | 11 | ex 115 |
. . . . . . . 8
⊢ (𝐴 ≠ 𝐵 → (if(𝜑, 𝐴, 𝐵) = 𝐵 → ¬ 𝜑)) |
13 | 12 | 3ad2ant3 1022 |
. . . . . . 7
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → (if(𝜑, 𝐴, 𝐵) = 𝐵 → ¬ 𝜑)) |
14 | 13 | adantld 278 |
. . . . . 6
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → ((¬ 𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐵) → ¬ 𝜑)) |
15 | | simpl 109 |
. . . . . 6
⊢ ((¬
𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐵) → ¬ 𝜓) |
16 | 14, 15 | jca2 308 |
. . . . 5
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → ((¬ 𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐵) → (¬ 𝜑 ∧ ¬ 𝜓))) |
17 | | pm5.21 696 |
. . . . 5
⊢ ((¬
𝜑 ∧ ¬ 𝜓) → (𝜑 ↔ 𝜓)) |
18 | 16, 17 | syl6 33 |
. . . 4
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → ((¬ 𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐵) → (𝜑 ↔ 𝜓))) |
19 | 10, 18 | jaod 718 |
. . 3
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → (((𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐴) ∨ (¬ 𝜓 ∧ if(𝜑, 𝐴, 𝐵) = 𝐵)) → (𝜑 ↔ 𝜓))) |
20 | 2, 19 | sylbid 150 |
. 2
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → (if(𝜑, 𝐴, 𝐵) = if(𝜓, 𝐴, 𝐵) → (𝜑 ↔ 𝜓))) |
21 | | ifbi 3577 |
. 2
⊢ ((𝜑 ↔ 𝜓) → if(𝜑, 𝐴, 𝐵) = if(𝜓, 𝐴, 𝐵)) |
22 | 20, 21 | impbid1 142 |
1
⊢
((DECID 𝜑 ∧ DECID 𝜓 ∧ 𝐴 ≠ 𝐵) → (if(𝜑, 𝐴, 𝐵) = if(𝜓, 𝐴, 𝐵) ↔ (𝜑 ↔ 𝜓))) |