Metamath Proof Explorer


Theorem dfac8clem

Description: Lemma for dfac8c . (Contributed by Mario Carneiro, 10-Jan-2013)

Ref Expression
Hypothesis dfac8clem.1 𝐹 = ( 𝑠 ∈ ( 𝐴 ∖ { ∅ } ) ↦ ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) )
Assertion dfac8clem ( 𝐴𝐵 → ( ∃ 𝑟 𝑟 We 𝐴 → ∃ 𝑓𝑧𝐴 ( 𝑧 ≠ ∅ → ( 𝑓𝑧 ) ∈ 𝑧 ) ) )

Proof

Step Hyp Ref Expression
1 dfac8clem.1 𝐹 = ( 𝑠 ∈ ( 𝐴 ∖ { ∅ } ) ↦ ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) )
2 eldifsn ( 𝑠 ∈ ( 𝐴 ∖ { ∅ } ) ↔ ( 𝑠𝐴𝑠 ≠ ∅ ) )
3 elssuni ( 𝑠𝐴𝑠 𝐴 )
4 3 ad2antrl ( ( ( 𝐴𝐵𝑟 We 𝐴 ) ∧ ( 𝑠𝐴𝑠 ≠ ∅ ) ) → 𝑠 𝐴 )
5 simplr ( ( ( 𝐴𝐵𝑟 We 𝐴 ) ∧ ( 𝑠𝐴𝑠 ≠ ∅ ) ) → 𝑟 We 𝐴 )
6 vex 𝑟 ∈ V
7 exse2 ( 𝑟 ∈ V → 𝑟 Se 𝐴 )
8 6 7 mp1i ( ( ( 𝐴𝐵𝑟 We 𝐴 ) ∧ ( 𝑠𝐴𝑠 ≠ ∅ ) ) → 𝑟 Se 𝐴 )
9 simprr ( ( ( 𝐴𝐵𝑟 We 𝐴 ) ∧ ( 𝑠𝐴𝑠 ≠ ∅ ) ) → 𝑠 ≠ ∅ )
10 wereu2 ( ( ( 𝑟 We 𝐴𝑟 Se 𝐴 ) ∧ ( 𝑠 𝐴𝑠 ≠ ∅ ) ) → ∃! 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 )
11 5 8 4 9 10 syl22anc ( ( ( 𝐴𝐵𝑟 We 𝐴 ) ∧ ( 𝑠𝐴𝑠 ≠ ∅ ) ) → ∃! 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 )
12 riotacl ( ∃! 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 → ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) ∈ 𝑠 )
13 11 12 syl ( ( ( 𝐴𝐵𝑟 We 𝐴 ) ∧ ( 𝑠𝐴𝑠 ≠ ∅ ) ) → ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) ∈ 𝑠 )
14 4 13 sseldd ( ( ( 𝐴𝐵𝑟 We 𝐴 ) ∧ ( 𝑠𝐴𝑠 ≠ ∅ ) ) → ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) ∈ 𝐴 )
15 2 14 sylan2b ( ( ( 𝐴𝐵𝑟 We 𝐴 ) ∧ 𝑠 ∈ ( 𝐴 ∖ { ∅ } ) ) → ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) ∈ 𝐴 )
16 15 1 fmptd ( ( 𝐴𝐵𝑟 We 𝐴 ) → 𝐹 : ( 𝐴 ∖ { ∅ } ) ⟶ 𝐴 )
17 difexg ( 𝐴𝐵 → ( 𝐴 ∖ { ∅ } ) ∈ V )
18 17 adantr ( ( 𝐴𝐵𝑟 We 𝐴 ) → ( 𝐴 ∖ { ∅ } ) ∈ V )
19 uniexg ( 𝐴𝐵 𝐴 ∈ V )
20 19 adantr ( ( 𝐴𝐵𝑟 We 𝐴 ) → 𝐴 ∈ V )
21 fex2 ( ( 𝐹 : ( 𝐴 ∖ { ∅ } ) ⟶ 𝐴 ∧ ( 𝐴 ∖ { ∅ } ) ∈ V ∧ 𝐴 ∈ V ) → 𝐹 ∈ V )
22 16 18 20 21 syl3anc ( ( 𝐴𝐵𝑟 We 𝐴 ) → 𝐹 ∈ V )
23 riotaex ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) ∈ V
24 1 fvmpt2 ( ( 𝑠 ∈ ( 𝐴 ∖ { ∅ } ) ∧ ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) ∈ V ) → ( 𝐹𝑠 ) = ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) )
25 23 24 mpan2 ( 𝑠 ∈ ( 𝐴 ∖ { ∅ } ) → ( 𝐹𝑠 ) = ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) )
26 2 25 sylbir ( ( 𝑠𝐴𝑠 ≠ ∅ ) → ( 𝐹𝑠 ) = ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) )
27 26 adantl ( ( ( 𝐴𝐵𝑟 We 𝐴 ) ∧ ( 𝑠𝐴𝑠 ≠ ∅ ) ) → ( 𝐹𝑠 ) = ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) )
28 27 13 eqeltrd ( ( ( 𝐴𝐵𝑟 We 𝐴 ) ∧ ( 𝑠𝐴𝑠 ≠ ∅ ) ) → ( 𝐹𝑠 ) ∈ 𝑠 )
29 28 expr ( ( ( 𝐴𝐵𝑟 We 𝐴 ) ∧ 𝑠𝐴 ) → ( 𝑠 ≠ ∅ → ( 𝐹𝑠 ) ∈ 𝑠 ) )
30 29 ralrimiva ( ( 𝐴𝐵𝑟 We 𝐴 ) → ∀ 𝑠𝐴 ( 𝑠 ≠ ∅ → ( 𝐹𝑠 ) ∈ 𝑠 ) )
31 nfv 𝑠 𝑧 ≠ ∅
32 nfmpt1 𝑠 ( 𝑠 ∈ ( 𝐴 ∖ { ∅ } ) ↦ ( 𝑎𝑠𝑏𝑠 ¬ 𝑏 𝑟 𝑎 ) )
33 1 32 nfcxfr 𝑠 𝐹
34 nfcv 𝑠 𝑧
35 33 34 nffv 𝑠 ( 𝐹𝑧 )
36 35 nfel1 𝑠 ( 𝐹𝑧 ) ∈ 𝑧
37 31 36 nfim 𝑠 ( 𝑧 ≠ ∅ → ( 𝐹𝑧 ) ∈ 𝑧 )
38 nfv 𝑧 ( 𝑠 ≠ ∅ → ( 𝐹𝑠 ) ∈ 𝑠 )
39 neeq1 ( 𝑧 = 𝑠 → ( 𝑧 ≠ ∅ ↔ 𝑠 ≠ ∅ ) )
40 fveq2 ( 𝑧 = 𝑠 → ( 𝐹𝑧 ) = ( 𝐹𝑠 ) )
41 id ( 𝑧 = 𝑠𝑧 = 𝑠 )
42 40 41 eleq12d ( 𝑧 = 𝑠 → ( ( 𝐹𝑧 ) ∈ 𝑧 ↔ ( 𝐹𝑠 ) ∈ 𝑠 ) )
43 39 42 imbi12d ( 𝑧 = 𝑠 → ( ( 𝑧 ≠ ∅ → ( 𝐹𝑧 ) ∈ 𝑧 ) ↔ ( 𝑠 ≠ ∅ → ( 𝐹𝑠 ) ∈ 𝑠 ) ) )
44 37 38 43 cbvralw ( ∀ 𝑧𝐴 ( 𝑧 ≠ ∅ → ( 𝐹𝑧 ) ∈ 𝑧 ) ↔ ∀ 𝑠𝐴 ( 𝑠 ≠ ∅ → ( 𝐹𝑠 ) ∈ 𝑠 ) )
45 30 44 sylibr ( ( 𝐴𝐵𝑟 We 𝐴 ) → ∀ 𝑧𝐴 ( 𝑧 ≠ ∅ → ( 𝐹𝑧 ) ∈ 𝑧 ) )
46 fveq1 ( 𝑓 = 𝐹 → ( 𝑓𝑧 ) = ( 𝐹𝑧 ) )
47 46 eleq1d ( 𝑓 = 𝐹 → ( ( 𝑓𝑧 ) ∈ 𝑧 ↔ ( 𝐹𝑧 ) ∈ 𝑧 ) )
48 47 imbi2d ( 𝑓 = 𝐹 → ( ( 𝑧 ≠ ∅ → ( 𝑓𝑧 ) ∈ 𝑧 ) ↔ ( 𝑧 ≠ ∅ → ( 𝐹𝑧 ) ∈ 𝑧 ) ) )
49 48 ralbidv ( 𝑓 = 𝐹 → ( ∀ 𝑧𝐴 ( 𝑧 ≠ ∅ → ( 𝑓𝑧 ) ∈ 𝑧 ) ↔ ∀ 𝑧𝐴 ( 𝑧 ≠ ∅ → ( 𝐹𝑧 ) ∈ 𝑧 ) ) )
50 22 45 49 spcedv ( ( 𝐴𝐵𝑟 We 𝐴 ) → ∃ 𝑓𝑧𝐴 ( 𝑧 ≠ ∅ → ( 𝑓𝑧 ) ∈ 𝑧 ) )
51 50 ex ( 𝐴𝐵 → ( 𝑟 We 𝐴 → ∃ 𝑓𝑧𝐴 ( 𝑧 ≠ ∅ → ( 𝑓𝑧 ) ∈ 𝑧 ) ) )
52 51 exlimdv ( 𝐴𝐵 → ( ∃ 𝑟 𝑟 We 𝐴 → ∃ 𝑓𝑧𝐴 ( 𝑧 ≠ ∅ → ( 𝑓𝑧 ) ∈ 𝑧 ) ) )