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

Theorem relop 4429
Description: A necessary and sufficient condition for a Kuratowski ordered pair to be a relation. (Contributed by NM, 3-Jun-2008.) (Avoid depending on this detail.)
Hypotheses
Ref Expression
relop.1 A V
relop.2 B V
Assertion
Ref Expression
relop (Rel ⟨A, B⟩ ↔ xy(A = {x} B = {x, y}))
Distinct variable groups:   x,y,A   x,B,y

Proof of Theorem relop
Dummy variables w v z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-rel 4295 . 2 (Rel ⟨A, B⟩ ↔ ⟨A, B⟩ ⊆ (V × V))
2 dfss2 2928 . . . . 5 (⟨A, B⟩ ⊆ (V × V) ↔ z(z A, B⟩ → z (V × V)))
3 vex 2554 . . . . . . . . . 10 z V
4 relop.1 . . . . . . . . . 10 A V
5 relop.2 . . . . . . . . . 10 B V
63, 4, 5elop 3959 . . . . . . . . 9 (z A, B⟩ ↔ (z = {A} z = {A, B}))
7 elvv 4345 . . . . . . . . 9 (z (V × V) ↔ xy z = ⟨x, y⟩)
86, 7imbi12i 228 . . . . . . . 8 ((z A, B⟩ → z (V × V)) ↔ ((z = {A} z = {A, B}) → xy z = ⟨x, y⟩))
9 jaob 630 . . . . . . . 8 (((z = {A} z = {A, B}) → xy z = ⟨x, y⟩) ↔ ((z = {A} → xy z = ⟨x, y⟩) (z = {A, B} → xy z = ⟨x, y⟩)))
108, 9bitri 173 . . . . . . 7 ((z A, B⟩ → z (V × V)) ↔ ((z = {A} → xy z = ⟨x, y⟩) (z = {A, B} → xy z = ⟨x, y⟩)))
1110albii 1356 . . . . . 6 (z(z A, B⟩ → z (V × V)) ↔ z((z = {A} → xy z = ⟨x, y⟩) (z = {A, B} → xy z = ⟨x, y⟩)))
12 19.26 1367 . . . . . 6 (z((z = {A} → xy z = ⟨x, y⟩) (z = {A, B} → xy z = ⟨x, y⟩)) ↔ (z(z = {A} → xy z = ⟨x, y⟩) z(z = {A, B} → xy z = ⟨x, y⟩)))
1311, 12bitri 173 . . . . 5 (z(z A, B⟩ → z (V × V)) ↔ (z(z = {A} → xy z = ⟨x, y⟩) z(z = {A, B} → xy z = ⟨x, y⟩)))
142, 13bitri 173 . . . 4 (⟨A, B⟩ ⊆ (V × V) ↔ (z(z = {A} → xy z = ⟨x, y⟩) z(z = {A, B} → xy z = ⟨x, y⟩)))
15 snexgOLD 3926 . . . . . . . 8 (A V → {A} V)
164, 15ax-mp 7 . . . . . . 7 {A} V
17 eqeq1 2043 . . . . . . . 8 (z = {A} → (z = {A} ↔ {A} = {A}))
18 eqeq1 2043 . . . . . . . . . 10 (z = {A} → (z = ⟨x, y⟩ ↔ {A} = ⟨x, y⟩))
19 eqcom 2039 . . . . . . . . . . 11 ({A} = ⟨x, y⟩ ↔ ⟨x, y⟩ = {A})
20 vex 2554 . . . . . . . . . . . 12 x V
21 vex 2554 . . . . . . . . . . . 12 y V
2220, 21, 4opeqsn 3980 . . . . . . . . . . 11 (⟨x, y⟩ = {A} ↔ (x = y A = {x}))
2319, 22bitri 173 . . . . . . . . . 10 ({A} = ⟨x, y⟩ ↔ (x = y A = {x}))
2418, 23syl6bb 185 . . . . . . . . 9 (z = {A} → (z = ⟨x, y⟩ ↔ (x = y A = {x})))
25242exbidv 1745 . . . . . . . 8 (z = {A} → (xy z = ⟨x, y⟩ ↔ xy(x = y A = {x})))
2617, 25imbi12d 223 . . . . . . 7 (z = {A} → ((z = {A} → xy z = ⟨x, y⟩) ↔ ({A} = {A} → xy(x = y A = {x}))))
2716, 26spcv 2640 . . . . . 6 (z(z = {A} → xy z = ⟨x, y⟩) → ({A} = {A} → xy(x = y A = {x})))
28 sneq 3378 . . . . . . . . 9 (w = x → {w} = {x})
2928eqeq2d 2048 . . . . . . . 8 (w = x → (A = {w} ↔ A = {x}))
3029cbvexv 1792 . . . . . . 7 (w A = {w} ↔ x A = {x})
31 a9ev 1584 . . . . . . . . . 10 y y = x
32 equcom 1590 . . . . . . . . . . 11 (y = xx = y)
3332exbii 1493 . . . . . . . . . 10 (y y = xy x = y)
3431, 33mpbi 133 . . . . . . . . 9 y x = y
35 19.41v 1779 . . . . . . . . 9 (y(x = y A = {x}) ↔ (y x = y A = {x}))
3634, 35mpbiran 846 . . . . . . . 8 (y(x = y A = {x}) ↔ A = {x})
3736exbii 1493 . . . . . . 7 (xy(x = y A = {x}) ↔ x A = {x})
38 eqid 2037 . . . . . . . 8 {A} = {A}
3938a1bi 232 . . . . . . 7 (xy(x = y A = {x}) ↔ ({A} = {A} → xy(x = y A = {x})))
4030, 37, 393bitr2ri 198 . . . . . 6 (({A} = {A} → xy(x = y A = {x})) ↔ w A = {w})
4127, 40sylib 127 . . . . 5 (z(z = {A} → xy z = ⟨x, y⟩) → w A = {w})
42 eqid 2037 . . . . . 6 {A, B} = {A, B}
43 prexgOLD 3937 . . . . . . . 8 ((A V B V) → {A, B} V)
444, 5, 43mp2an 402 . . . . . . 7 {A, B} V
45 eqeq1 2043 . . . . . . . 8 (z = {A, B} → (z = {A, B} ↔ {A, B} = {A, B}))
46 eqeq1 2043 . . . . . . . . 9 (z = {A, B} → (z = ⟨x, y⟩ ↔ {A, B} = ⟨x, y⟩))
47462exbidv 1745 . . . . . . . 8 (z = {A, B} → (xy z = ⟨x, y⟩ ↔ xy{A, B} = ⟨x, y⟩))
4845, 47imbi12d 223 . . . . . . 7 (z = {A, B} → ((z = {A, B} → xy z = ⟨x, y⟩) ↔ ({A, B} = {A, B} → xy{A, B} = ⟨x, y⟩)))
4944, 48spcv 2640 . . . . . 6 (z(z = {A, B} → xy z = ⟨x, y⟩) → ({A, B} = {A, B} → xy{A, B} = ⟨x, y⟩))
5042, 49mpi 15 . . . . 5 (z(z = {A, B} → xy z = ⟨x, y⟩) → xy{A, B} = ⟨x, y⟩)
51 eqcom 2039 . . . . . . . . . 10 ({A, B} = ⟨x, y⟩ ↔ ⟨x, y⟩ = {A, B})
5220, 21, 4, 5opeqpr 3981 . . . . . . . . . 10 (⟨x, y⟩ = {A, B} ↔ ((A = {x} B = {x, y}) (A = {x, y} B = {x})))
5351, 52bitri 173 . . . . . . . . 9 ({A, B} = ⟨x, y⟩ ↔ ((A = {x} B = {x, y}) (A = {x, y} B = {x})))
54 idd 21 . . . . . . . . . 10 (A = {w} → ((A = {x} B = {x, y}) → (A = {x} B = {x, y})))
55 eqtr2 2055 . . . . . . . . . . . . . 14 ((A = {x, y} A = {w}) → {x, y} = {w})
56 vex 2554 . . . . . . . . . . . . . . . 16 w V
5720, 21, 56preqsn 3537 . . . . . . . . . . . . . . 15 ({x, y} = {w} ↔ (x = y y = w))
5857simplbi 259 . . . . . . . . . . . . . 14 ({x, y} = {w} → x = y)
5955, 58syl 14 . . . . . . . . . . . . 13 ((A = {x, y} A = {w}) → x = y)
60 dfsn2 3381 . . . . . . . . . . . . . . . . . . . 20 {x} = {x, x}
61 preq2 3439 . . . . . . . . . . . . . . . . . . . 20 (x = y → {x, x} = {x, y})
6260, 61syl5req 2082 . . . . . . . . . . . . . . . . . . 19 (x = y → {x, y} = {x})
6362eqeq2d 2048 . . . . . . . . . . . . . . . . . 18 (x = y → (A = {x, y} ↔ A = {x}))
6460, 61syl5eq 2081 . . . . . . . . . . . . . . . . . . 19 (x = y → {x} = {x, y})
6564eqeq2d 2048 . . . . . . . . . . . . . . . . . 18 (x = y → (B = {x} ↔ B = {x, y}))
6663, 65anbi12d 442 . . . . . . . . . . . . . . . . 17 (x = y → ((A = {x, y} B = {x}) ↔ (A = {x} B = {x, y})))
6766biimpd 132 . . . . . . . . . . . . . . . 16 (x = y → ((A = {x, y} B = {x}) → (A = {x} B = {x, y})))
6867expd 245 . . . . . . . . . . . . . . 15 (x = y → (A = {x, y} → (B = {x} → (A = {x} B = {x, y}))))
6968com12 27 . . . . . . . . . . . . . 14 (A = {x, y} → (x = y → (B = {x} → (A = {x} B = {x, y}))))
7069adantr 261 . . . . . . . . . . . . 13 ((A = {x, y} A = {w}) → (x = y → (B = {x} → (A = {x} B = {x, y}))))
7159, 70mpd 13 . . . . . . . . . . . 12 ((A = {x, y} A = {w}) → (B = {x} → (A = {x} B = {x, y})))
7271expcom 109 . . . . . . . . . . 11 (A = {w} → (A = {x, y} → (B = {x} → (A = {x} B = {x, y}))))
7372impd 242 . . . . . . . . . 10 (A = {w} → ((A = {x, y} B = {x}) → (A = {x} B = {x, y})))
7454, 73jaod 636 . . . . . . . . 9 (A = {w} → (((A = {x} B = {x, y}) (A = {x, y} B = {x})) → (A = {x} B = {x, y})))
7553, 74syl5bi 141 . . . . . . . 8 (A = {w} → ({A, B} = ⟨x, y⟩ → (A = {x} B = {x, y})))
76752eximdv 1759 . . . . . . 7 (A = {w} → (xy{A, B} = ⟨x, y⟩ → xy(A = {x} B = {x, y})))
7776exlimiv 1486 . . . . . 6 (w A = {w} → (xy{A, B} = ⟨x, y⟩ → xy(A = {x} B = {x, y})))
7877imp 115 . . . . 5 ((w A = {w} xy{A, B} = ⟨x, y⟩) → xy(A = {x} B = {x, y}))
7941, 50, 78syl2an 273 . . . 4 ((z(z = {A} → xy z = ⟨x, y⟩) z(z = {A, B} → xy z = ⟨x, y⟩)) → xy(A = {x} B = {x, y}))
8014, 79sylbi 114 . . 3 (⟨A, B⟩ ⊆ (V × V) → xy(A = {x} B = {x, y}))
81 simpr 103 . . . . . . . . . . 11 ((A = {x} z = {A}) → z = {A})
82 equid 1586 . . . . . . . . . . . . . 14 x = x
8382jctl 297 . . . . . . . . . . . . 13 (A = {x} → (x = x A = {x}))
8420, 20, 4opeqsn 3980 . . . . . . . . . . . . 13 (⟨x, x⟩ = {A} ↔ (x = x A = {x}))
8583, 84sylibr 137 . . . . . . . . . . . 12 (A = {x} → ⟨x, x⟩ = {A})
8685adantr 261 . . . . . . . . . . 11 ((A = {x} z = {A}) → ⟨x, x⟩ = {A})
8781, 86eqtr4d 2072 . . . . . . . . . 10 ((A = {x} z = {A}) → z = ⟨x, x⟩)
88 opeq12 3542 . . . . . . . . . . . 12 ((w = x v = x) → ⟨w, v⟩ = ⟨x, x⟩)
8988eqeq2d 2048 . . . . . . . . . . 11 ((w = x v = x) → (z = ⟨w, v⟩ ↔ z = ⟨x, x⟩))
9020, 20, 89spc2ev 2642 . . . . . . . . . 10 (z = ⟨x, x⟩ → wv z = ⟨w, v⟩)
9187, 90syl 14 . . . . . . . . 9 ((A = {x} z = {A}) → wv z = ⟨w, v⟩)
9291adantlr 446 . . . . . . . 8 (((A = {x} B = {x, y}) z = {A}) → wv z = ⟨w, v⟩)
93 preq12 3440 . . . . . . . . . . . 12 ((A = {x} B = {x, y}) → {A, B} = {{x}, {x, y}})
9493eqeq2d 2048 . . . . . . . . . . 11 ((A = {x} B = {x, y}) → (z = {A, B} ↔ z = {{x}, {x, y}}))
9594biimpa 280 . . . . . . . . . 10 (((A = {x} B = {x, y}) z = {A, B}) → z = {{x}, {x, y}})
9620, 21dfop 3539 . . . . . . . . . 10 x, y⟩ = {{x}, {x, y}}
9795, 96syl6eqr 2087 . . . . . . . . 9 (((A = {x} B = {x, y}) z = {A, B}) → z = ⟨x, y⟩)
98 opeq12 3542 . . . . . . . . . . 11 ((w = x v = y) → ⟨w, v⟩ = ⟨x, y⟩)
9998eqeq2d 2048 . . . . . . . . . 10 ((w = x v = y) → (z = ⟨w, v⟩ ↔ z = ⟨x, y⟩))
10020, 21, 99spc2ev 2642 . . . . . . . . 9 (z = ⟨x, y⟩ → wv z = ⟨w, v⟩)
10197, 100syl 14 . . . . . . . 8 (((A = {x} B = {x, y}) z = {A, B}) → wv z = ⟨w, v⟩)
10292, 101jaodan 709 . . . . . . 7 (((A = {x} B = {x, y}) (z = {A} z = {A, B})) → wv z = ⟨w, v⟩)
103102ex 108 . . . . . 6 ((A = {x} B = {x, y}) → ((z = {A} z = {A, B}) → wv z = ⟨w, v⟩))
104 elvv 4345 . . . . . 6 (z (V × V) ↔ wv z = ⟨w, v⟩)
105103, 6, 1043imtr4g 194 . . . . 5 ((A = {x} B = {x, y}) → (z A, B⟩ → z (V × V)))
106105ssrdv 2945 . . . 4 ((A = {x} B = {x, y}) → ⟨A, B⟩ ⊆ (V × V))
107106exlimivv 1773 . . 3 (xy(A = {x} B = {x, y}) → ⟨A, B⟩ ⊆ (V × V))
10880, 107impbii 117 . 2 (⟨A, B⟩ ⊆ (V × V) ↔ xy(A = {x} B = {x, y}))
1091, 108bitri 173 1 (Rel ⟨A, B⟩ ↔ xy(A = {x} B = {x, y}))
Colors of variables: wff set class
Syntax hints:  wi 4   wa 97  wb 98   wo 628  wal 1240   = wceq 1242  wex 1378   wcel 1390  Vcvv 2551  wss 2911  {csn 3367  {cpr 3368  cop 3370   × cxp 4286  Rel wrel 4293
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-clab 2024  df-cleq 2030  df-clel 2033  df-nfc 2164  df-v 2553  df-un 2916  df-in 2918  df-ss 2925  df-pw 3353  df-sn 3373  df-pr 3374  df-op 3376  df-opab 3810  df-xp 4294  df-rel 4295
This theorem is referenced by:  funopg  4877
  Copyright terms: Public domain W3C validator