Metamath Proof Explorer


Theorem ptpjpre1

Description: The preimage of a projection function can be expressed as an indexed cartesian product. (Contributed by Mario Carneiro, 6-Feb-2015)

Ref Expression
Hypothesis ptpjpre1.1 𝑋 = X 𝑘𝐴 ( 𝐹𝑘 )
Assertion ptpjpre1 ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) “ 𝑈 ) = X 𝑘𝐴 if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) )

Proof

Step Hyp Ref Expression
1 ptpjpre1.1 𝑋 = X 𝑘𝐴 ( 𝐹𝑘 )
2 fveq2 ( 𝑘 = 𝐼 → ( 𝑤𝑘 ) = ( 𝑤𝐼 ) )
3 fveq2 ( 𝑘 = 𝐼 → ( 𝐹𝑘 ) = ( 𝐹𝐼 ) )
4 3 unieqd ( 𝑘 = 𝐼 ( 𝐹𝑘 ) = ( 𝐹𝐼 ) )
5 2 4 eleq12d ( 𝑘 = 𝐼 → ( ( 𝑤𝑘 ) ∈ ( 𝐹𝑘 ) ↔ ( 𝑤𝐼 ) ∈ ( 𝐹𝐼 ) ) )
6 vex 𝑤 ∈ V
7 6 elixp ( 𝑤X 𝑘𝐴 ( 𝐹𝑘 ) ↔ ( 𝑤 Fn 𝐴 ∧ ∀ 𝑘𝐴 ( 𝑤𝑘 ) ∈ ( 𝐹𝑘 ) ) )
8 7 simprbi ( 𝑤X 𝑘𝐴 ( 𝐹𝑘 ) → ∀ 𝑘𝐴 ( 𝑤𝑘 ) ∈ ( 𝐹𝑘 ) )
9 8 1 eleq2s ( 𝑤𝑋 → ∀ 𝑘𝐴 ( 𝑤𝑘 ) ∈ ( 𝐹𝑘 ) )
10 9 adantl ( ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) ∧ 𝑤𝑋 ) → ∀ 𝑘𝐴 ( 𝑤𝑘 ) ∈ ( 𝐹𝑘 ) )
11 simplrl ( ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) ∧ 𝑤𝑋 ) → 𝐼𝐴 )
12 5 10 11 rspcdva ( ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) ∧ 𝑤𝑋 ) → ( 𝑤𝐼 ) ∈ ( 𝐹𝐼 ) )
13 12 fmpttd ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) : 𝑋 ( 𝐹𝐼 ) )
14 ffn ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) : 𝑋 ( 𝐹𝐼 ) → ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) Fn 𝑋 )
15 elpreima ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) Fn 𝑋 → ( 𝑧 ∈ ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) “ 𝑈 ) ↔ ( 𝑧𝑋 ∧ ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) ‘ 𝑧 ) ∈ 𝑈 ) ) )
16 13 14 15 3syl ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( 𝑧 ∈ ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) “ 𝑈 ) ↔ ( 𝑧𝑋 ∧ ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) ‘ 𝑧 ) ∈ 𝑈 ) ) )
17 fveq1 ( 𝑤 = 𝑧 → ( 𝑤𝐼 ) = ( 𝑧𝐼 ) )
18 eqid ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) = ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) )
19 fvex ( 𝑧𝐼 ) ∈ V
20 17 18 19 fvmpt ( 𝑧𝑋 → ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) ‘ 𝑧 ) = ( 𝑧𝐼 ) )
21 20 eleq1d ( 𝑧𝑋 → ( ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) ‘ 𝑧 ) ∈ 𝑈 ↔ ( 𝑧𝐼 ) ∈ 𝑈 ) )
22 21 pm5.32i ( ( 𝑧𝑋 ∧ ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) ‘ 𝑧 ) ∈ 𝑈 ) ↔ ( 𝑧𝑋 ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) )
23 1 eleq2i ( 𝑧𝑋𝑧X 𝑘𝐴 ( 𝐹𝑘 ) )
24 vex 𝑧 ∈ V
25 24 elixp ( 𝑧X 𝑘𝐴 ( 𝐹𝑘 ) ↔ ( 𝑧 Fn 𝐴 ∧ ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) )
26 23 25 bitri ( 𝑧𝑋 ↔ ( 𝑧 Fn 𝐴 ∧ ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) )
27 26 anbi1i ( ( 𝑧𝑋 ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) ↔ ( ( 𝑧 Fn 𝐴 ∧ ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) )
28 anass ( ( ( 𝑧 Fn 𝐴 ∧ ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) ↔ ( 𝑧 Fn 𝐴 ∧ ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) ) )
29 27 28 bitri ( ( 𝑧𝑋 ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) ↔ ( 𝑧 Fn 𝐴 ∧ ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) ) )
30 22 29 bitri ( ( 𝑧𝑋 ∧ ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) ‘ 𝑧 ) ∈ 𝑈 ) ↔ ( 𝑧 Fn 𝐴 ∧ ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) ) )
31 simprl ( ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) ∧ ( ( 𝑧𝐼 ) ∈ 𝑈 ∧ ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) ) → ( 𝑧𝐼 ) ∈ 𝑈 )
32 fveq2 ( 𝑘 = 𝐼 → ( 𝑧𝑘 ) = ( 𝑧𝐼 ) )
33 iftrue ( 𝑘 = 𝐼 → if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) = 𝑈 )
34 32 33 eleq12d ( 𝑘 = 𝐼 → ( ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ↔ ( 𝑧𝐼 ) ∈ 𝑈 ) )
35 31 34 syl5ibrcom ( ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) ∧ ( ( 𝑧𝐼 ) ∈ 𝑈 ∧ ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) ) → ( 𝑘 = 𝐼 → ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) )
36 simprr ( ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) ∧ ( ( 𝑧𝐼 ) ∈ 𝑈 ∧ ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) ) → ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) )
37 iffalse ( ¬ 𝑘 = 𝐼 → if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) = ( 𝐹𝑘 ) )
38 37 eleq2d ( ¬ 𝑘 = 𝐼 → ( ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ↔ ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) )
39 36 38 syl5ibrcom ( ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) ∧ ( ( 𝑧𝐼 ) ∈ 𝑈 ∧ ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) ) → ( ¬ 𝑘 = 𝐼 → ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) )
40 35 39 pm2.61d ( ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) ∧ ( ( 𝑧𝐼 ) ∈ 𝑈 ∧ ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) ) → ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) )
41 40 expr ( ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) → ( ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) → ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) )
42 41 ralimdv ( ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) → ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) → ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) )
43 42 expimpd ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( ( ( 𝑧𝐼 ) ∈ 𝑈 ∧ ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) → ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) )
44 43 ancomsd ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) → ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) )
45 elssuni ( 𝑈 ∈ ( 𝐹𝐼 ) → 𝑈 ( 𝐹𝐼 ) )
46 45 ad2antll ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → 𝑈 ( 𝐹𝐼 ) )
47 33 4 sseq12d ( 𝑘 = 𝐼 → ( if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ⊆ ( 𝐹𝑘 ) ↔ 𝑈 ( 𝐹𝐼 ) ) )
48 46 47 syl5ibrcom ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( 𝑘 = 𝐼 → if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ⊆ ( 𝐹𝑘 ) ) )
49 ssid ( 𝐹𝑘 ) ⊆ ( 𝐹𝑘 )
50 37 49 eqsstrdi ( ¬ 𝑘 = 𝐼 → if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ⊆ ( 𝐹𝑘 ) )
51 48 50 pm2.61d1 ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ⊆ ( 𝐹𝑘 ) )
52 51 sseld ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) → ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) )
53 52 ralimdv ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) → ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ) )
54 34 rspcv ( 𝐼𝐴 → ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) → ( 𝑧𝐼 ) ∈ 𝑈 ) )
55 54 ad2antrl ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) → ( 𝑧𝐼 ) ∈ 𝑈 ) )
56 53 55 jcad ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) → ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) ) )
57 44 56 impbid ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) ↔ ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) )
58 57 anbi2d ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( ( 𝑧 Fn 𝐴 ∧ ( ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ ( 𝐹𝑘 ) ∧ ( 𝑧𝐼 ) ∈ 𝑈 ) ) ↔ ( 𝑧 Fn 𝐴 ∧ ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) ) )
59 30 58 syl5bb ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( ( 𝑧𝑋 ∧ ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) ‘ 𝑧 ) ∈ 𝑈 ) ↔ ( 𝑧 Fn 𝐴 ∧ ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) ) )
60 16 59 bitrd ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( 𝑧 ∈ ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) “ 𝑈 ) ↔ ( 𝑧 Fn 𝐴 ∧ ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) ) )
61 24 elixp ( 𝑧X 𝑘𝐴 if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ↔ ( 𝑧 Fn 𝐴 ∧ ∀ 𝑘𝐴 ( 𝑧𝑘 ) ∈ if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) )
62 60 61 bitr4di ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( 𝑧 ∈ ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) “ 𝑈 ) ↔ 𝑧X 𝑘𝐴 if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) ) )
63 62 eqrdv ( ( ( 𝐴𝑉𝐹 : 𝐴 ⟶ Top ) ∧ ( 𝐼𝐴𝑈 ∈ ( 𝐹𝐼 ) ) ) → ( ( 𝑤𝑋 ↦ ( 𝑤𝐼 ) ) “ 𝑈 ) = X 𝑘𝐴 if ( 𝑘 = 𝐼 , 𝑈 , ( 𝐹𝑘 ) ) )