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

Theorem relop 4409
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 4275 . 2 (Rel ⟨A, B⟩ ↔ ⟨A, B⟩ ⊆ (V × V))
2 dfss2 2907 . . . . 5 (⟨A, B⟩ ⊆ (V × V) ↔ z(z A, B⟩ → z (V × V)))
3 vex 2534 . . . . . . . . . 10 z V
4 relop.1 . . . . . . . . . 10 A V
5 relop.2 . . . . . . . . . 10 B V
63, 4, 5elop 3938 . . . . . . . . 9 (z A, B⟩ ↔ (z = {A} z = {A, B}))
7 elvv 4325 . . . . . . . . 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 618 . . . . . . . 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 1335 . . . . . 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 1346 . . . . . 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 3905 . . . . . . . 8 (A V → {A} V)
164, 15ax-mp 7 . . . . . . 7 {A} V
17 eqeq1 2024 . . . . . . . 8 (z = {A} → (z = {A} ↔ {A} = {A}))
18 eqeq1 2024 . . . . . . . . . 10 (z = {A} → (z = ⟨x, y⟩ ↔ {A} = ⟨x, y⟩))
19 eqcom 2020 . . . . . . . . . . 11 ({A} = ⟨x, y⟩ ↔ ⟨x, y⟩ = {A})
20 vex 2534 . . . . . . . . . . . 12 x V
21 vex 2534 . . . . . . . . . . . 12 y V
2220, 21, 4opeqsn 3959 . . . . . . . . . . 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 1726 . . . . . . . 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 2619 . . . . . 6 (z(z = {A} → xy z = ⟨x, y⟩) → ({A} = {A} → xy(x = y A = {x})))
28 sneq 3357 . . . . . . . . 9 (w = x → {w} = {x})
2928eqeq2d 2029 . . . . . . . 8 (w = x → (A = {w} ↔ A = {x}))
3029cbvexv 1773 . . . . . . 7 (w A = {w} ↔ x A = {x})
31 a9ev 1565 . . . . . . . . . 10 y y = x
32 equcom 1571 . . . . . . . . . . 11 (y = xx = y)
3332exbii 1474 . . . . . . . . . 10 (y y = xy x = y)
3431, 33mpbi 133 . . . . . . . . 9 y x = y
35 19.41v 1760 . . . . . . . . 9 (y(x = y A = {x}) ↔ (y x = y A = {x}))
3634, 35mpbiran 833 . . . . . . . 8 (y(x = y A = {x}) ↔ A = {x})
3736exbii 1474 . . . . . . 7 (xy(x = y A = {x}) ↔ x A = {x})
38 eqid 2018 . . . . . . . 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 2018 . . . . . 6 {A, B} = {A, B}
43 prexgOLD 3916 . . . . . . . 8 ((A V B V) → {A, B} V)
444, 5, 43mp2an 404 . . . . . . 7 {A, B} V
45 eqeq1 2024 . . . . . . . 8 (z = {A, B} → (z = {A, B} ↔ {A, B} = {A, B}))
46 eqeq1 2024 . . . . . . . . 9 (z = {A, B} → (z = ⟨x, y⟩ ↔ {A, B} = ⟨x, y⟩))
47462exbidv 1726 . . . . . . . 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 2619 . . . . . 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 2020 . . . . . . . . . 10 ({A, B} = ⟨x, y⟩ ↔ ⟨x, y⟩ = {A, B})
5220, 21, 4, 5opeqpr 3960 . . . . . . . . . 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 2036 . . . . . . . . . . . . . 14 ((A = {x, y} A = {w}) → {x, y} = {w})
56 vex 2534 . . . . . . . . . . . . . . . 16 w V
5720, 21, 56preqsn 3516 . . . . . . . . . . . . . . 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 3360 . . . . . . . . . . . . . . . . . . . 20 {x} = {x, x}
61 preq2 3418 . . . . . . . . . . . . . . . . . . . 20 (x = y → {x, x} = {x, y})
6260, 61syl5req 2063 . . . . . . . . . . . . . . . . . . 19 (x = y → {x, y} = {x})
6362eqeq2d 2029 . . . . . . . . . . . . . . . . . 18 (x = y → (A = {x, y} ↔ A = {x}))
6460, 61syl5eq 2062 . . . . . . . . . . . . . . . . . . 19 (x = y → {x} = {x, y})
6564eqeq2d 2029 . . . . . . . . . . . . . . . . . 18 (x = y → (B = {x} ↔ B = {x, y}))
6663, 65anbi12d 445 . . . . . . . . . . . . . . . . 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 624 . . . . . . . . 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 1740 . . . . . . 7 (A = {w} → (xy{A, B} = ⟨x, y⟩ → xy(A = {x} B = {x, y})))
7776exlimiv 1467 . . . . . 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 1567 . . . . . . . . . . . . . 14 x = x
8382jctl 297 . . . . . . . . . . . . 13 (A = {x} → (x = x A = {x}))
8420, 20, 4opeqsn 3959 . . . . . . . . . . . . 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 2053 . . . . . . . . . 10 ((A = {x} z = {A}) → z = ⟨x, x⟩)
88 opeq12 3521 . . . . . . . . . . . 12 ((w = x v = x) → ⟨w, v⟩ = ⟨x, x⟩)
8988eqeq2d 2029 . . . . . . . . . . 11 ((w = x v = x) → (z = ⟨w, v⟩ ↔ z = ⟨x, x⟩))
9020, 20, 89spc2ev 2621 . . . . . . . . . 10 (z = ⟨x, x⟩ → wv z = ⟨w, v⟩)
9187, 90syl 14 . . . . . . . . 9 ((A = {x} z = {A}) → wv z = ⟨w, v⟩)
9291adantlr 449 . . . . . . . 8 (((A = {x} B = {x, y}) z = {A}) → wv z = ⟨w, v⟩)
93 preq12 3419 . . . . . . . . . . . 12 ((A = {x} B = {x, y}) → {A, B} = {{x}, {x, y}})
9493eqeq2d 2029 . . . . . . . . . . 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 3518 . . . . . . . . . 10 x, y⟩ = {{x}, {x, y}}
9795, 96syl6eqr 2068 . . . . . . . . 9 (((A = {x} B = {x, y}) z = {A, B}) → z = ⟨x, y⟩)
98 opeq12 3521 . . . . . . . . . . 11 ((w = x v = y) → ⟨w, v⟩ = ⟨x, y⟩)
9998eqeq2d 2029 . . . . . . . . . 10 ((w = x v = y) → (z = ⟨w, v⟩ ↔ z = ⟨x, y⟩))
10020, 21, 99spc2ev 2621 . . . . . . . . 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 697 . . . . . . 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 4325 . . . . . 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 2924 . . . 4 ((A = {x} B = {x, y}) → ⟨A, B⟩ ⊆ (V × V))
107106exlimivv 1754 . . 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 616  wal 1224   = wceq 1226  wex 1358   wcel 1370  Vcvv 2531  wss 2890  {csn 3346  {cpr 3347  cop 3349   × cxp 4266  Rel wrel 4273
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 617  ax-5 1312  ax-7 1313  ax-gen 1314  ax-ie1 1359  ax-ie2 1360  ax-8 1372  ax-10 1373  ax-11 1374  ax-i12 1375  ax-bnd 1376  ax-4 1377  ax-14 1382  ax-17 1396  ax-i9 1400  ax-ial 1405  ax-i5r 1406  ax-ext 2000  ax-sep 3845  ax-pow 3897  ax-pr 3914
This theorem depends on definitions:  df-bi 110  df-3an 873  df-tru 1229  df-nf 1326  df-sb 1624  df-clab 2005  df-cleq 2011  df-clel 2014  df-nfc 2145  df-v 2533  df-un 2895  df-in 2897  df-ss 2904  df-pw 3332  df-sn 3352  df-pr 3353  df-op 3355  df-opab 3789  df-xp 4274  df-rel 4275
This theorem is referenced by:  funopg  4856
  Copyright terms: Public domain W3C validator