Step | Hyp | Ref
| Expression |
1 | | opabfi.a |
. . 3
⊢ (𝜑 → 𝐴 ∈ Fin) |
2 | | opabfi.b |
. . 3
⊢ (𝜑 → 𝐵 ∈ Fin) |
3 | | xpfi 6986 |
. . 3
⊢ ((𝐴 ∈ Fin ∧ 𝐵 ∈ Fin) → (𝐴 × 𝐵) ∈ Fin) |
4 | 1, 2, 3 | syl2anc 411 |
. 2
⊢ (𝜑 → (𝐴 × 𝐵) ∈ Fin) |
5 | | opabfi.s |
. . . 4
⊢ 𝑆 = {〈𝑥, 𝑦〉 ∣ ((𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ∧ 𝜓)} |
6 | | opabssxp 4733 |
. . . 4
⊢
{〈𝑥, 𝑦〉 ∣ ((𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ∧ 𝜓)} ⊆ (𝐴 × 𝐵) |
7 | 5, 6 | eqsstri 3211 |
. . 3
⊢ 𝑆 ⊆ (𝐴 × 𝐵) |
8 | 7 | a1i 9 |
. 2
⊢ (𝜑 → 𝑆 ⊆ (𝐴 × 𝐵)) |
9 | | xp2nd 6219 |
. . . . . 6
⊢ (𝑧 ∈ (𝐴 × 𝐵) → (2nd ‘𝑧) ∈ 𝐵) |
10 | 9 | adantl 277 |
. . . . 5
⊢ ((𝜑 ∧ 𝑧 ∈ (𝐴 × 𝐵)) → (2nd ‘𝑧) ∈ 𝐵) |
11 | | xp1st 6218 |
. . . . . . 7
⊢ (𝑧 ∈ (𝐴 × 𝐵) → (1st ‘𝑧) ∈ 𝐴) |
12 | 11 | adantl 277 |
. . . . . 6
⊢ ((𝜑 ∧ 𝑧 ∈ (𝐴 × 𝐵)) → (1st ‘𝑧) ∈ 𝐴) |
13 | | opabfi.dc |
. . . . . . 7
⊢ (𝜑 → ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐵 DECID 𝜓) |
14 | 13 | adantr 276 |
. . . . . 6
⊢ ((𝜑 ∧ 𝑧 ∈ (𝐴 × 𝐵)) → ∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐵 DECID 𝜓) |
15 | | nfcv 2336 |
. . . . . . . 8
⊢
Ⅎ𝑥𝐵 |
16 | | nfsbc1v 3004 |
. . . . . . . . 9
⊢
Ⅎ𝑥[(1st ‘𝑧) / 𝑥]𝜓 |
17 | 16 | nfdc 1670 |
. . . . . . . 8
⊢
Ⅎ𝑥DECID [(1st
‘𝑧) / 𝑥]𝜓 |
18 | 15, 17 | nfralw 2531 |
. . . . . . 7
⊢
Ⅎ𝑥∀𝑦 ∈ 𝐵 DECID
[(1st ‘𝑧) / 𝑥]𝜓 |
19 | | sbceq1a 2995 |
. . . . . . . . 9
⊢ (𝑥 = (1st ‘𝑧) → (𝜓 ↔ [(1st ‘𝑧) / 𝑥]𝜓)) |
20 | 19 | dcbid 839 |
. . . . . . . 8
⊢ (𝑥 = (1st ‘𝑧) → (DECID
𝜓 ↔ DECID
[(1st ‘𝑧) / 𝑥]𝜓)) |
21 | 20 | ralbidv 2494 |
. . . . . . 7
⊢ (𝑥 = (1st ‘𝑧) → (∀𝑦 ∈ 𝐵 DECID 𝜓 ↔ ∀𝑦 ∈ 𝐵 DECID
[(1st ‘𝑧) / 𝑥]𝜓)) |
22 | 18, 21 | rspc 2858 |
. . . . . 6
⊢
((1st ‘𝑧) ∈ 𝐴 → (∀𝑥 ∈ 𝐴 ∀𝑦 ∈ 𝐵 DECID 𝜓 → ∀𝑦 ∈ 𝐵 DECID
[(1st ‘𝑧) / 𝑥]𝜓)) |
23 | 12, 14, 22 | sylc 62 |
. . . . 5
⊢ ((𝜑 ∧ 𝑧 ∈ (𝐴 × 𝐵)) → ∀𝑦 ∈ 𝐵 DECID
[(1st ‘𝑧) / 𝑥]𝜓) |
24 | | nfsbc1v 3004 |
. . . . . . 7
⊢
Ⅎ𝑦[(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓 |
25 | 24 | nfdc 1670 |
. . . . . 6
⊢
Ⅎ𝑦DECID [(2nd
‘𝑧) / 𝑦][(1st
‘𝑧) / 𝑥]𝜓 |
26 | | sbceq1a 2995 |
. . . . . . 7
⊢ (𝑦 = (2nd ‘𝑧) →
([(1st ‘𝑧) / 𝑥]𝜓 ↔ [(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓)) |
27 | 26 | dcbid 839 |
. . . . . 6
⊢ (𝑦 = (2nd ‘𝑧) → (DECID
[(1st ‘𝑧) / 𝑥]𝜓 ↔ DECID
[(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓)) |
28 | 25, 27 | rspc 2858 |
. . . . 5
⊢
((2nd ‘𝑧) ∈ 𝐵 → (∀𝑦 ∈ 𝐵 DECID
[(1st ‘𝑧) / 𝑥]𝜓 → DECID
[(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓)) |
29 | 10, 23, 28 | sylc 62 |
. . . 4
⊢ ((𝜑 ∧ 𝑧 ∈ (𝐴 × 𝐵)) → DECID
[(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓) |
30 | | nfv 1539 |
. . . . . . . . . 10
⊢
Ⅎ𝑥((1st ‘𝑧) ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) |
31 | 30, 16 | nfan 1576 |
. . . . . . . . 9
⊢
Ⅎ𝑥(((1st ‘𝑧) ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ∧ [(1st ‘𝑧) / 𝑥]𝜓) |
32 | | nfv 1539 |
. . . . . . . . . 10
⊢
Ⅎ𝑦((1st ‘𝑧) ∈ 𝐴 ∧ (2nd ‘𝑧) ∈ 𝐵) |
33 | 32, 24 | nfan 1576 |
. . . . . . . . 9
⊢
Ⅎ𝑦(((1st ‘𝑧) ∈ 𝐴 ∧ (2nd ‘𝑧) ∈ 𝐵) ∧ [(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓) |
34 | | eleq1 2256 |
. . . . . . . . . . 11
⊢ (𝑥 = (1st ‘𝑧) → (𝑥 ∈ 𝐴 ↔ (1st ‘𝑧) ∈ 𝐴)) |
35 | 34 | anbi1d 465 |
. . . . . . . . . 10
⊢ (𝑥 = (1st ‘𝑧) → ((𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ↔ ((1st ‘𝑧) ∈ 𝐴 ∧ 𝑦 ∈ 𝐵))) |
36 | 35, 19 | anbi12d 473 |
. . . . . . . . 9
⊢ (𝑥 = (1st ‘𝑧) → (((𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ∧ 𝜓) ↔ (((1st ‘𝑧) ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ∧ [(1st ‘𝑧) / 𝑥]𝜓))) |
37 | | eleq1 2256 |
. . . . . . . . . . 11
⊢ (𝑦 = (2nd ‘𝑧) → (𝑦 ∈ 𝐵 ↔ (2nd ‘𝑧) ∈ 𝐵)) |
38 | 37 | anbi2d 464 |
. . . . . . . . . 10
⊢ (𝑦 = (2nd ‘𝑧) → (((1st
‘𝑧) ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ↔ ((1st ‘𝑧) ∈ 𝐴 ∧ (2nd ‘𝑧) ∈ 𝐵))) |
39 | 38, 26 | anbi12d 473 |
. . . . . . . . 9
⊢ (𝑦 = (2nd ‘𝑧) → ((((1st
‘𝑧) ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ∧ [(1st ‘𝑧) / 𝑥]𝜓) ↔ (((1st ‘𝑧) ∈ 𝐴 ∧ (2nd ‘𝑧) ∈ 𝐵) ∧ [(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓))) |
40 | 31, 33, 36, 39 | opelopabgf 4300 |
. . . . . . . 8
⊢
(((1st ‘𝑧) ∈ 𝐴 ∧ (2nd ‘𝑧) ∈ 𝐵) → (〈(1st ‘𝑧), (2nd ‘𝑧)〉 ∈ {〈𝑥, 𝑦〉 ∣ ((𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ∧ 𝜓)} ↔ (((1st ‘𝑧) ∈ 𝐴 ∧ (2nd ‘𝑧) ∈ 𝐵) ∧ [(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓))) |
41 | 11, 9, 40 | syl2anc 411 |
. . . . . . 7
⊢ (𝑧 ∈ (𝐴 × 𝐵) → (〈(1st ‘𝑧), (2nd ‘𝑧)〉 ∈ {〈𝑥, 𝑦〉 ∣ ((𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ∧ 𝜓)} ↔ (((1st ‘𝑧) ∈ 𝐴 ∧ (2nd ‘𝑧) ∈ 𝐵) ∧ [(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓))) |
42 | | 1st2nd2 6228 |
. . . . . . . 8
⊢ (𝑧 ∈ (𝐴 × 𝐵) → 𝑧 = 〈(1st ‘𝑧), (2nd ‘𝑧)〉) |
43 | 5 | a1i 9 |
. . . . . . . 8
⊢ (𝑧 ∈ (𝐴 × 𝐵) → 𝑆 = {〈𝑥, 𝑦〉 ∣ ((𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ∧ 𝜓)}) |
44 | 42, 43 | eleq12d 2264 |
. . . . . . 7
⊢ (𝑧 ∈ (𝐴 × 𝐵) → (𝑧 ∈ 𝑆 ↔ 〈(1st ‘𝑧), (2nd ‘𝑧)〉 ∈ {〈𝑥, 𝑦〉 ∣ ((𝑥 ∈ 𝐴 ∧ 𝑦 ∈ 𝐵) ∧ 𝜓)})) |
45 | | ibar 301 |
. . . . . . . 8
⊢
(((1st ‘𝑧) ∈ 𝐴 ∧ (2nd ‘𝑧) ∈ 𝐵) → ([(2nd
‘𝑧) / 𝑦][(1st
‘𝑧) / 𝑥]𝜓 ↔ (((1st ‘𝑧) ∈ 𝐴 ∧ (2nd ‘𝑧) ∈ 𝐵) ∧ [(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓))) |
46 | 11, 9, 45 | syl2anc 411 |
. . . . . . 7
⊢ (𝑧 ∈ (𝐴 × 𝐵) → ([(2nd
‘𝑧) / 𝑦][(1st
‘𝑧) / 𝑥]𝜓 ↔ (((1st ‘𝑧) ∈ 𝐴 ∧ (2nd ‘𝑧) ∈ 𝐵) ∧ [(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓))) |
47 | 41, 44, 46 | 3bitr4d 220 |
. . . . . 6
⊢ (𝑧 ∈ (𝐴 × 𝐵) → (𝑧 ∈ 𝑆 ↔ [(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓)) |
48 | 47 | dcbid 839 |
. . . . 5
⊢ (𝑧 ∈ (𝐴 × 𝐵) → (DECID 𝑧 ∈ 𝑆 ↔ DECID
[(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓)) |
49 | 48 | adantl 277 |
. . . 4
⊢ ((𝜑 ∧ 𝑧 ∈ (𝐴 × 𝐵)) → (DECID 𝑧 ∈ 𝑆 ↔ DECID
[(2nd ‘𝑧) / 𝑦][(1st ‘𝑧) / 𝑥]𝜓)) |
50 | 29, 49 | mpbird 167 |
. . 3
⊢ ((𝜑 ∧ 𝑧 ∈ (𝐴 × 𝐵)) → DECID 𝑧 ∈ 𝑆) |
51 | 50 | ralrimiva 2567 |
. 2
⊢ (𝜑 → ∀𝑧 ∈ (𝐴 × 𝐵)DECID 𝑧 ∈ 𝑆) |
52 | | ssfidc 6991 |
. 2
⊢ (((𝐴 × 𝐵) ∈ Fin ∧ 𝑆 ⊆ (𝐴 × 𝐵) ∧ ∀𝑧 ∈ (𝐴 × 𝐵)DECID 𝑧 ∈ 𝑆) → 𝑆 ∈ Fin) |
53 | 4, 8, 51, 52 | syl3anc 1249 |
1
⊢ (𝜑 → 𝑆 ∈ Fin) |