ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  fliftfun Structured version   GIF version

Theorem fliftfun 5379
Description: The function 𝐹 is the unique function defined by 𝐹A = B, provided that the well-definedness condition holds. (Contributed by Mario Carneiro, 23-Dec-2016.)
Hypotheses
Ref Expression
flift.1 𝐹 = ran (x 𝑋 ↦ ⟨A, B⟩)
flift.2 ((φ x 𝑋) → A 𝑅)
flift.3 ((φ x 𝑋) → B 𝑆)
fliftfun.4 (x = yA = 𝐶)
fliftfun.5 (x = yB = 𝐷)
Assertion
Ref Expression
fliftfun (φ → (Fun 𝐹x 𝑋 y 𝑋 (A = 𝐶B = 𝐷)))
Distinct variable groups:   y,A   y,B   x,𝐶   x,y,𝑅   x,𝐷   y,𝐹   φ,x,y   x,𝑋,y   x,𝑆,y
Allowed substitution hints:   A(x)   B(x)   𝐶(y)   𝐷(y)   𝐹(x)

Proof of Theorem fliftfun
Dummy variables v u z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 nfv 1418 . . 3 xφ
2 flift.1 . . . . 5 𝐹 = ran (x 𝑋 ↦ ⟨A, B⟩)
3 nfmpt1 3841 . . . . . 6 x(x 𝑋 ↦ ⟨A, B⟩)
43nfrn 4522 . . . . 5 xran (x 𝑋 ↦ ⟨A, B⟩)
52, 4nfcxfr 2172 . . . 4 x𝐹
65nffun 4867 . . 3 xFun 𝐹
7 fveq2 5121 . . . . . . 7 (A = 𝐶 → (𝐹A) = (𝐹𝐶))
8 simplr 482 . . . . . . . . 9 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → Fun 𝐹)
9 flift.2 . . . . . . . . . . 11 ((φ x 𝑋) → A 𝑅)
10 flift.3 . . . . . . . . . . 11 ((φ x 𝑋) → B 𝑆)
112, 9, 10fliftel1 5377 . . . . . . . . . 10 ((φ x 𝑋) → A𝐹B)
1211ad2ant2r 478 . . . . . . . . 9 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → A𝐹B)
13 funbrfv 5155 . . . . . . . . 9 (Fun 𝐹 → (A𝐹B → (𝐹A) = B))
148, 12, 13sylc 56 . . . . . . . 8 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → (𝐹A) = B)
15 simprr 484 . . . . . . . . . . 11 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → y 𝑋)
16 eqidd 2038 . . . . . . . . . . 11 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → 𝐶 = 𝐶)
17 eqidd 2038 . . . . . . . . . . 11 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → 𝐷 = 𝐷)
18 fliftfun.4 . . . . . . . . . . . . . 14 (x = yA = 𝐶)
1918eqeq2d 2048 . . . . . . . . . . . . 13 (x = y → (𝐶 = A𝐶 = 𝐶))
20 fliftfun.5 . . . . . . . . . . . . . 14 (x = yB = 𝐷)
2120eqeq2d 2048 . . . . . . . . . . . . 13 (x = y → (𝐷 = B𝐷 = 𝐷))
2219, 21anbi12d 442 . . . . . . . . . . . 12 (x = y → ((𝐶 = A 𝐷 = B) ↔ (𝐶 = 𝐶 𝐷 = 𝐷)))
2322rspcev 2650 . . . . . . . . . . 11 ((y 𝑋 (𝐶 = 𝐶 𝐷 = 𝐷)) → x 𝑋 (𝐶 = A 𝐷 = B))
2415, 16, 17, 23syl12anc 1132 . . . . . . . . . 10 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → x 𝑋 (𝐶 = A 𝐷 = B))
252, 9, 10fliftel 5376 . . . . . . . . . . 11 (φ → (𝐶𝐹𝐷x 𝑋 (𝐶 = A 𝐷 = B)))
2625ad2antrr 457 . . . . . . . . . 10 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → (𝐶𝐹𝐷x 𝑋 (𝐶 = A 𝐷 = B)))
2724, 26mpbird 156 . . . . . . . . 9 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → 𝐶𝐹𝐷)
28 funbrfv 5155 . . . . . . . . 9 (Fun 𝐹 → (𝐶𝐹𝐷 → (𝐹𝐶) = 𝐷))
298, 27, 28sylc 56 . . . . . . . 8 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → (𝐹𝐶) = 𝐷)
3014, 29eqeq12d 2051 . . . . . . 7 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → ((𝐹A) = (𝐹𝐶) ↔ B = 𝐷))
317, 30syl5ib 143 . . . . . 6 (((φ Fun 𝐹) (x 𝑋 y 𝑋)) → (A = 𝐶B = 𝐷))
3231anassrs 380 . . . . 5 ((((φ Fun 𝐹) x 𝑋) y 𝑋) → (A = 𝐶B = 𝐷))
3332ralrimiva 2386 . . . 4 (((φ Fun 𝐹) x 𝑋) → y 𝑋 (A = 𝐶B = 𝐷))
3433exp31 346 . . 3 (φ → (Fun 𝐹 → (x 𝑋y 𝑋 (A = 𝐶B = 𝐷))))
351, 6, 34ralrimd 2391 . 2 (φ → (Fun 𝐹x 𝑋 y 𝑋 (A = 𝐶B = 𝐷)))
362, 9, 10fliftel 5376 . . . . . . . . 9 (φ → (z𝐹ux 𝑋 (z = A u = B)))
372, 9, 10fliftel 5376 . . . . . . . . . 10 (φ → (z𝐹vx 𝑋 (z = A v = B)))
3818eqeq2d 2048 . . . . . . . . . . . 12 (x = y → (z = Az = 𝐶))
3920eqeq2d 2048 . . . . . . . . . . . 12 (x = y → (v = Bv = 𝐷))
4038, 39anbi12d 442 . . . . . . . . . . 11 (x = y → ((z = A v = B) ↔ (z = 𝐶 v = 𝐷)))
4140cbvrexv 2528 . . . . . . . . . 10 (x 𝑋 (z = A v = B) ↔ y 𝑋 (z = 𝐶 v = 𝐷))
4237, 41syl6bb 185 . . . . . . . . 9 (φ → (z𝐹vy 𝑋 (z = 𝐶 v = 𝐷)))
4336, 42anbi12d 442 . . . . . . . 8 (φ → ((z𝐹u z𝐹v) ↔ (x 𝑋 (z = A u = B) y 𝑋 (z = 𝐶 v = 𝐷))))
4443biimpd 132 . . . . . . 7 (φ → ((z𝐹u z𝐹v) → (x 𝑋 (z = A u = B) y 𝑋 (z = 𝐶 v = 𝐷))))
45 reeanv 2473 . . . . . . . 8 (x 𝑋 y 𝑋 ((z = A u = B) (z = 𝐶 v = 𝐷)) ↔ (x 𝑋 (z = A u = B) y 𝑋 (z = 𝐶 v = 𝐷)))
46 r19.29 2444 . . . . . . . . . 10 ((x 𝑋 y 𝑋 (A = 𝐶B = 𝐷) x 𝑋 y 𝑋 ((z = A u = B) (z = 𝐶 v = 𝐷))) → x 𝑋 (y 𝑋 (A = 𝐶B = 𝐷) y 𝑋 ((z = A u = B) (z = 𝐶 v = 𝐷))))
47 r19.29 2444 . . . . . . . . . . . 12 ((y 𝑋 (A = 𝐶B = 𝐷) y 𝑋 ((z = A u = B) (z = 𝐶 v = 𝐷))) → y 𝑋 ((A = 𝐶B = 𝐷) ((z = A u = B) (z = 𝐶 v = 𝐷))))
48 eqtr2 2055 . . . . . . . . . . . . . . . . 17 ((z = A z = 𝐶) → A = 𝐶)
4948ad2ant2r 478 . . . . . . . . . . . . . . . 16 (((z = A u = B) (z = 𝐶 v = 𝐷)) → A = 𝐶)
5049imim1i 54 . . . . . . . . . . . . . . 15 ((A = 𝐶B = 𝐷) → (((z = A u = B) (z = 𝐶 v = 𝐷)) → B = 𝐷))
5150imp 115 . . . . . . . . . . . . . 14 (((A = 𝐶B = 𝐷) ((z = A u = B) (z = 𝐶 v = 𝐷))) → B = 𝐷)
52 simprlr 490 . . . . . . . . . . . . . 14 (((A = 𝐶B = 𝐷) ((z = A u = B) (z = 𝐶 v = 𝐷))) → u = B)
53 simprrr 492 . . . . . . . . . . . . . 14 (((A = 𝐶B = 𝐷) ((z = A u = B) (z = 𝐶 v = 𝐷))) → v = 𝐷)
5451, 52, 533eqtr4d 2079 . . . . . . . . . . . . 13 (((A = 𝐶B = 𝐷) ((z = A u = B) (z = 𝐶 v = 𝐷))) → u = v)
5554rexlimivw 2423 . . . . . . . . . . . 12 (y 𝑋 ((A = 𝐶B = 𝐷) ((z = A u = B) (z = 𝐶 v = 𝐷))) → u = v)
5647, 55syl 14 . . . . . . . . . . 11 ((y 𝑋 (A = 𝐶B = 𝐷) y 𝑋 ((z = A u = B) (z = 𝐶 v = 𝐷))) → u = v)
5756rexlimivw 2423 . . . . . . . . . 10 (x 𝑋 (y 𝑋 (A = 𝐶B = 𝐷) y 𝑋 ((z = A u = B) (z = 𝐶 v = 𝐷))) → u = v)
5846, 57syl 14 . . . . . . . . 9 ((x 𝑋 y 𝑋 (A = 𝐶B = 𝐷) x 𝑋 y 𝑋 ((z = A u = B) (z = 𝐶 v = 𝐷))) → u = v)
5958ex 108 . . . . . . . 8 (x 𝑋 y 𝑋 (A = 𝐶B = 𝐷) → (x 𝑋 y 𝑋 ((z = A u = B) (z = 𝐶 v = 𝐷)) → u = v))
6045, 59syl5bir 142 . . . . . . 7 (x 𝑋 y 𝑋 (A = 𝐶B = 𝐷) → ((x 𝑋 (z = A u = B) y 𝑋 (z = 𝐶 v = 𝐷)) → u = v))
6144, 60syl9 66 . . . . . 6 (φ → (x 𝑋 y 𝑋 (A = 𝐶B = 𝐷) → ((z𝐹u z𝐹v) → u = v)))
6261alrimdv 1753 . . . . 5 (φ → (x 𝑋 y 𝑋 (A = 𝐶B = 𝐷) → v((z𝐹u z𝐹v) → u = v)))
6362alrimdv 1753 . . . 4 (φ → (x 𝑋 y 𝑋 (A = 𝐶B = 𝐷) → uv((z𝐹u z𝐹v) → u = v)))
6463alrimdv 1753 . . 3 (φ → (x 𝑋 y 𝑋 (A = 𝐶B = 𝐷) → zuv((z𝐹u z𝐹v) → u = v)))
652, 9, 10fliftrel 5375 . . . . 5 (φ𝐹 ⊆ (𝑅 × 𝑆))
66 relxp 4390 . . . . 5 Rel (𝑅 × 𝑆)
67 relss 4370 . . . . 5 (𝐹 ⊆ (𝑅 × 𝑆) → (Rel (𝑅 × 𝑆) → Rel 𝐹))
6865, 66, 67mpisyl 1332 . . . 4 (φ → Rel 𝐹)
69 dffun2 4855 . . . . 5 (Fun 𝐹 ↔ (Rel 𝐹 zuv((z𝐹u z𝐹v) → u = v)))
7069baib 827 . . . 4 (Rel 𝐹 → (Fun 𝐹zuv((z𝐹u z𝐹v) → u = v)))
7168, 70syl 14 . . 3 (φ → (Fun 𝐹zuv((z𝐹u z𝐹v) → u = v)))
7264, 71sylibrd 158 . 2 (φ → (x 𝑋 y 𝑋 (A = 𝐶B = 𝐷) → Fun 𝐹))
7335, 72impbid 120 1 (φ → (Fun 𝐹x 𝑋 y 𝑋 (A = 𝐶B = 𝐷)))
Colors of variables: wff set class
Syntax hints:  wi 4   wa 97  wb 98  wal 1240   = wceq 1242   wcel 1390  wral 2300  wrex 2301  wss 2911  cop 3370   class class class wbr 3755  cmpt 3809   × cxp 4286  ran crn 4289  Rel wrel 4293  Fun wfun 4839  cfv 4845
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 99  ax-ia2 100  ax-ia3 101  ax-io 629  ax-5 1333  ax-7 1334  ax-gen 1335  ax-ie1 1379  ax-ie2 1380  ax-8 1392  ax-10 1393  ax-11 1394  ax-i12 1395  ax-bnd 1396  ax-4 1397  ax-14 1402  ax-17 1416  ax-i9 1420  ax-ial 1424  ax-i5r 1425  ax-ext 2019  ax-sep 3866  ax-pow 3918  ax-pr 3935
This theorem depends on definitions:  df-bi 110  df-3an 886  df-tru 1245  df-nf 1347  df-sb 1643  df-eu 1900  df-mo 1901  df-clab 2024  df-cleq 2030  df-clel 2033  df-nfc 2164  df-ral 2305  df-rex 2306  df-rab 2309  df-v 2553  df-sbc 2759  df-csb 2847  df-un 2916  df-in 2918  df-ss 2925  df-pw 3353  df-sn 3373  df-pr 3374  df-op 3376  df-uni 3572  df-br 3756  df-opab 3810  df-mpt 3811  df-id 4021  df-xp 4294  df-rel 4295  df-cnv 4296  df-co 4297  df-dm 4298  df-rn 4299  df-res 4300  df-ima 4301  df-iota 4810  df-fun 4847  df-fn 4848  df-f 4849  df-fv 4853
This theorem is referenced by:  fliftfund  5380  fliftfuns  5381  qliftfun  6124
  Copyright terms: Public domain W3C validator