Metamath Proof Explorer


Theorem upixp

Description: Universal property of the indexed Cartesian product. (Contributed by Jeff Madsen, 2-Sep-2009) (Proof shortened by Mario Carneiro, 12-Sep-2015)

Ref Expression
Hypotheses upixp.1 𝑋 = X 𝑏𝐴 ( 𝐶𝑏 )
upixp.2 𝑃 = ( 𝑤𝐴 ↦ ( 𝑥𝑋 ↦ ( 𝑥𝑤 ) ) )
Assertion upixp ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) → ∃! ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) )

Proof

Step Hyp Ref Expression
1 upixp.1 𝑋 = X 𝑏𝐴 ( 𝐶𝑏 )
2 upixp.2 𝑃 = ( 𝑤𝐴 ↦ ( 𝑥𝑋 ↦ ( 𝑥𝑤 ) ) )
3 mptexg ( 𝐵𝑆 → ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ∈ V )
4 3 3ad2ant2 ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) → ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ∈ V )
5 ffvelrn ( ( ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ∧ 𝑢𝐵 ) → ( ( 𝐹𝑎 ) ‘ 𝑢 ) ∈ ( 𝐶𝑎 ) )
6 5 expcom ( 𝑢𝐵 → ( ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) → ( ( 𝐹𝑎 ) ‘ 𝑢 ) ∈ ( 𝐶𝑎 ) ) )
7 6 ralimdv ( 𝑢𝐵 → ( ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) → ∀ 𝑎𝐴 ( ( 𝐹𝑎 ) ‘ 𝑢 ) ∈ ( 𝐶𝑎 ) ) )
8 7 impcom ( ( ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ∧ 𝑢𝐵 ) → ∀ 𝑎𝐴 ( ( 𝐹𝑎 ) ‘ 𝑢 ) ∈ ( 𝐶𝑎 ) )
9 8 3ad2antl3 ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑢𝐵 ) → ∀ 𝑎𝐴 ( ( 𝐹𝑎 ) ‘ 𝑢 ) ∈ ( 𝐶𝑎 ) )
10 fveq2 ( 𝑎 = 𝑠 → ( 𝐹𝑎 ) = ( 𝐹𝑠 ) )
11 10 fveq1d ( 𝑎 = 𝑠 → ( ( 𝐹𝑎 ) ‘ 𝑢 ) = ( ( 𝐹𝑠 ) ‘ 𝑢 ) )
12 fveq2 ( 𝑎 = 𝑠 → ( 𝐶𝑎 ) = ( 𝐶𝑠 ) )
13 11 12 eleq12d ( 𝑎 = 𝑠 → ( ( ( 𝐹𝑎 ) ‘ 𝑢 ) ∈ ( 𝐶𝑎 ) ↔ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ∈ ( 𝐶𝑠 ) ) )
14 13 cbvralvw ( ∀ 𝑎𝐴 ( ( 𝐹𝑎 ) ‘ 𝑢 ) ∈ ( 𝐶𝑎 ) ↔ ∀ 𝑠𝐴 ( ( 𝐹𝑠 ) ‘ 𝑢 ) ∈ ( 𝐶𝑠 ) )
15 9 14 sylib ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑢𝐵 ) → ∀ 𝑠𝐴 ( ( 𝐹𝑠 ) ‘ 𝑢 ) ∈ ( 𝐶𝑠 ) )
16 simpl1 ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑢𝐵 ) → 𝐴𝑅 )
17 mptelixpg ( 𝐴𝑅 → ( ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ∈ X 𝑠𝐴 ( 𝐶𝑠 ) ↔ ∀ 𝑠𝐴 ( ( 𝐹𝑠 ) ‘ 𝑢 ) ∈ ( 𝐶𝑠 ) ) )
18 16 17 syl ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑢𝐵 ) → ( ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ∈ X 𝑠𝐴 ( 𝐶𝑠 ) ↔ ∀ 𝑠𝐴 ( ( 𝐹𝑠 ) ‘ 𝑢 ) ∈ ( 𝐶𝑠 ) ) )
19 15 18 mpbird ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑢𝐵 ) → ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ∈ X 𝑠𝐴 ( 𝐶𝑠 ) )
20 fveq2 ( 𝑏 = 𝑠 → ( 𝐶𝑏 ) = ( 𝐶𝑠 ) )
21 20 cbvixpv X 𝑏𝐴 ( 𝐶𝑏 ) = X 𝑠𝐴 ( 𝐶𝑠 )
22 1 21 eqtri 𝑋 = X 𝑠𝐴 ( 𝐶𝑠 )
23 19 22 eleqtrrdi ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑢𝐵 ) → ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ∈ 𝑋 )
24 23 fmpttd ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) → ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) : 𝐵𝑋 )
25 nfv 𝑎 𝐴𝑅
26 nfv 𝑎 𝐵𝑆
27 nfra1 𝑎𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 )
28 25 26 27 nf3an 𝑎 ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) )
29 fveq2 ( 𝑠 = 𝑎 → ( 𝐹𝑠 ) = ( 𝐹𝑎 ) )
30 29 fveq1d ( 𝑠 = 𝑎 → ( ( 𝐹𝑠 ) ‘ 𝑢 ) = ( ( 𝐹𝑎 ) ‘ 𝑢 ) )
31 eqid ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) = ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) )
32 fvex ( ( 𝐹𝑠 ) ‘ 𝑢 ) ∈ V
33 30 31 32 fvmpt3i ( 𝑎𝐴 → ( ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ‘ 𝑎 ) = ( ( 𝐹𝑎 ) ‘ 𝑢 ) )
34 33 adantl ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑎𝐴 ) → ( ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ‘ 𝑎 ) = ( ( 𝐹𝑎 ) ‘ 𝑢 ) )
35 34 mpteq2dv ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑎𝐴 ) → ( 𝑢𝐵 ↦ ( ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ‘ 𝑎 ) ) = ( 𝑢𝐵 ↦ ( ( 𝐹𝑎 ) ‘ 𝑢 ) ) )
36 23 adantlr ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑎𝐴 ) ∧ 𝑢𝐵 ) → ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ∈ 𝑋 )
37 eqidd ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑎𝐴 ) → ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) = ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) )
38 fveq2 ( 𝑤 = 𝑎 → ( 𝑥𝑤 ) = ( 𝑥𝑎 ) )
39 38 mpteq2dv ( 𝑤 = 𝑎 → ( 𝑥𝑋 ↦ ( 𝑥𝑤 ) ) = ( 𝑥𝑋 ↦ ( 𝑥𝑎 ) ) )
40 fvex ( 𝐶𝑏 ) ∈ V
41 40 rgenw 𝑏𝐴 ( 𝐶𝑏 ) ∈ V
42 ixpexg ( ∀ 𝑏𝐴 ( 𝐶𝑏 ) ∈ V → X 𝑏𝐴 ( 𝐶𝑏 ) ∈ V )
43 41 42 ax-mp X 𝑏𝐴 ( 𝐶𝑏 ) ∈ V
44 1 43 eqeltri 𝑋 ∈ V
45 44 mptex ( 𝑥𝑋 ↦ ( 𝑥𝑤 ) ) ∈ V
46 39 2 45 fvmpt3i ( 𝑎𝐴 → ( 𝑃𝑎 ) = ( 𝑥𝑋 ↦ ( 𝑥𝑎 ) ) )
47 46 adantl ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑎𝐴 ) → ( 𝑃𝑎 ) = ( 𝑥𝑋 ↦ ( 𝑥𝑎 ) ) )
48 fveq1 ( 𝑥 = ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) → ( 𝑥𝑎 ) = ( ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ‘ 𝑎 ) )
49 36 37 47 48 fmptco ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑎𝐴 ) → ( ( 𝑃𝑎 ) ∘ ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) = ( 𝑢𝐵 ↦ ( ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ‘ 𝑎 ) ) )
50 rsp ( ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) → ( 𝑎𝐴 → ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) )
51 50 3ad2ant3 ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) → ( 𝑎𝐴 → ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) )
52 51 imp ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑎𝐴 ) → ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) )
53 52 feqmptd ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑎𝐴 ) → ( 𝐹𝑎 ) = ( 𝑢𝐵 ↦ ( ( 𝐹𝑎 ) ‘ 𝑢 ) ) )
54 35 49 53 3eqtr4rd ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ 𝑎𝐴 ) → ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) )
55 54 ex ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) → ( 𝑎𝐴 → ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) ) )
56 28 55 ralrimi ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) → ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) )
57 simprl ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) → : 𝐵𝑋 )
58 57 feqmptd ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) → = ( 𝑢𝐵 ↦ ( 𝑢 ) ) )
59 simplrr ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) → ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) )
60 fveq2 ( 𝑎 = 𝑠 → ( 𝑃𝑎 ) = ( 𝑃𝑠 ) )
61 60 coeq1d ( 𝑎 = 𝑠 → ( ( 𝑃𝑎 ) ∘ ) = ( ( 𝑃𝑠 ) ∘ ) )
62 10 61 eqeq12d ( 𝑎 = 𝑠 → ( ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ↔ ( 𝐹𝑠 ) = ( ( 𝑃𝑠 ) ∘ ) ) )
63 62 rspccva ( ( ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ∧ 𝑠𝐴 ) → ( 𝐹𝑠 ) = ( ( 𝑃𝑠 ) ∘ ) )
64 59 63 sylan ( ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) ∧ 𝑠𝐴 ) → ( 𝐹𝑠 ) = ( ( 𝑃𝑠 ) ∘ ) )
65 64 fveq1d ( ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) ∧ 𝑠𝐴 ) → ( ( 𝐹𝑠 ) ‘ 𝑢 ) = ( ( ( 𝑃𝑠 ) ∘ ) ‘ 𝑢 ) )
66 fvco3 ( ( : 𝐵𝑋𝑢𝐵 ) → ( ( ( 𝑃𝑠 ) ∘ ) ‘ 𝑢 ) = ( ( 𝑃𝑠 ) ‘ ( 𝑢 ) ) )
67 57 66 sylan ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) → ( ( ( 𝑃𝑠 ) ∘ ) ‘ 𝑢 ) = ( ( 𝑃𝑠 ) ‘ ( 𝑢 ) ) )
68 67 adantr ( ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) ∧ 𝑠𝐴 ) → ( ( ( 𝑃𝑠 ) ∘ ) ‘ 𝑢 ) = ( ( 𝑃𝑠 ) ‘ ( 𝑢 ) ) )
69 fveq2 ( 𝑤 = 𝑠 → ( 𝑥𝑤 ) = ( 𝑥𝑠 ) )
70 69 mpteq2dv ( 𝑤 = 𝑠 → ( 𝑥𝑋 ↦ ( 𝑥𝑤 ) ) = ( 𝑥𝑋 ↦ ( 𝑥𝑠 ) ) )
71 70 2 45 fvmpt3i ( 𝑠𝐴 → ( 𝑃𝑠 ) = ( 𝑥𝑋 ↦ ( 𝑥𝑠 ) ) )
72 71 adantl ( ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) ∧ 𝑠𝐴 ) → ( 𝑃𝑠 ) = ( 𝑥𝑋 ↦ ( 𝑥𝑠 ) ) )
73 72 fveq1d ( ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) ∧ 𝑠𝐴 ) → ( ( 𝑃𝑠 ) ‘ ( 𝑢 ) ) = ( ( 𝑥𝑋 ↦ ( 𝑥𝑠 ) ) ‘ ( 𝑢 ) ) )
74 ffvelrn ( ( : 𝐵𝑋𝑢𝐵 ) → ( 𝑢 ) ∈ 𝑋 )
75 57 74 sylan ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) → ( 𝑢 ) ∈ 𝑋 )
76 fveq1 ( 𝑥 = ( 𝑢 ) → ( 𝑥𝑠 ) = ( ( 𝑢 ) ‘ 𝑠 ) )
77 eqid ( 𝑥𝑋 ↦ ( 𝑥𝑠 ) ) = ( 𝑥𝑋 ↦ ( 𝑥𝑠 ) )
78 fvex ( 𝑥𝑠 ) ∈ V
79 76 77 78 fvmpt3i ( ( 𝑢 ) ∈ 𝑋 → ( ( 𝑥𝑋 ↦ ( 𝑥𝑠 ) ) ‘ ( 𝑢 ) ) = ( ( 𝑢 ) ‘ 𝑠 ) )
80 75 79 syl ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) → ( ( 𝑥𝑋 ↦ ( 𝑥𝑠 ) ) ‘ ( 𝑢 ) ) = ( ( 𝑢 ) ‘ 𝑠 ) )
81 80 adantr ( ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) ∧ 𝑠𝐴 ) → ( ( 𝑥𝑋 ↦ ( 𝑥𝑠 ) ) ‘ ( 𝑢 ) ) = ( ( 𝑢 ) ‘ 𝑠 ) )
82 73 81 eqtrd ( ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) ∧ 𝑠𝐴 ) → ( ( 𝑃𝑠 ) ‘ ( 𝑢 ) ) = ( ( 𝑢 ) ‘ 𝑠 ) )
83 65 68 82 3eqtrd ( ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) ∧ 𝑠𝐴 ) → ( ( 𝐹𝑠 ) ‘ 𝑢 ) = ( ( 𝑢 ) ‘ 𝑠 ) )
84 83 mpteq2dva ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) → ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) = ( 𝑠𝐴 ↦ ( ( 𝑢 ) ‘ 𝑠 ) ) )
85 75 1 eleqtrdi ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) → ( 𝑢 ) ∈ X 𝑏𝐴 ( 𝐶𝑏 ) )
86 ixpfn ( ( 𝑢 ) ∈ X 𝑏𝐴 ( 𝐶𝑏 ) → ( 𝑢 ) Fn 𝐴 )
87 85 86 syl ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) → ( 𝑢 ) Fn 𝐴 )
88 dffn5 ( ( 𝑢 ) Fn 𝐴 ↔ ( 𝑢 ) = ( 𝑠𝐴 ↦ ( ( 𝑢 ) ‘ 𝑠 ) ) )
89 87 88 sylib ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) → ( 𝑢 ) = ( 𝑠𝐴 ↦ ( ( 𝑢 ) ‘ 𝑠 ) ) )
90 84 89 eqtr4d ( ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) ∧ 𝑢𝐵 ) → ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) = ( 𝑢 ) )
91 90 mpteq2dva ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) → ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) = ( 𝑢𝐵 ↦ ( 𝑢 ) ) )
92 58 91 eqtr4d ( ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) ∧ ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ) → = ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) )
93 92 ex ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) → ( ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) → = ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) )
94 93 alrimiv ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) → ∀ ( ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) → = ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) )
95 feq1 ( = ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) → ( : 𝐵𝑋 ↔ ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) : 𝐵𝑋 ) )
96 coeq2 ( = ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) → ( ( 𝑃𝑎 ) ∘ ) = ( ( 𝑃𝑎 ) ∘ ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) )
97 96 eqeq2d ( = ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) → ( ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ↔ ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) ) )
98 97 ralbidv ( = ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) → ( ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ↔ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) ) )
99 95 98 anbi12d ( = ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) → ( ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) ↔ ( ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) ) ) )
100 99 eqeu ( ( ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ∈ V ∧ ( ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) ) ∧ ∀ ( ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) → = ( 𝑢𝐵 ↦ ( 𝑠𝐴 ↦ ( ( 𝐹𝑠 ) ‘ 𝑢 ) ) ) ) ) → ∃! ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) )
101 4 24 56 94 100 syl121anc ( ( 𝐴𝑅𝐵𝑆 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) : 𝐵 ⟶ ( 𝐶𝑎 ) ) → ∃! ( : 𝐵𝑋 ∧ ∀ 𝑎𝐴 ( 𝐹𝑎 ) = ( ( 𝑃𝑎 ) ∘ ) ) )