Users' Mathboxes Mathbox for Jeff Madsen < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  isgrpda Structured version   Visualization version   GIF version

Theorem isgrpda 35227
Description: Properties that determine a group operation. (Contributed by Jeff Madsen, 1-Dec-2009.) (New usage is discouraged.)
Hypotheses
Ref Expression
isgrpda.1 (𝜑𝑋 ∈ V)
isgrpda.2 (𝜑𝐺:(𝑋 × 𝑋)⟶𝑋)
isgrpda.3 ((𝜑 ∧ (𝑥𝑋𝑦𝑋𝑧𝑋)) → ((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧)))
isgrpda.4 (𝜑𝑈𝑋)
isgrpda.5 ((𝜑𝑥𝑋) → (𝑈𝐺𝑥) = 𝑥)
isgrpda.6 ((𝜑𝑥𝑋) → ∃𝑛𝑋 (𝑛𝐺𝑥) = 𝑈)
Assertion
Ref Expression
isgrpda (𝜑𝐺 ∈ GrpOp)
Distinct variable groups:   𝜑,𝑥,𝑦,𝑧   𝑛,𝐺,𝑥,𝑦,𝑧   𝑛,𝑋,𝑥,𝑦,𝑧   𝑈,𝑛,𝑥,𝑦,𝑧
Allowed substitution hint:   𝜑(𝑛)

Proof of Theorem isgrpda
Dummy variable 𝑢 is distinct from all other variables.
StepHypRef Expression
1 isgrpda.2 . . 3 (𝜑𝐺:(𝑋 × 𝑋)⟶𝑋)
2 isgrpda.3 . . . 4 ((𝜑 ∧ (𝑥𝑋𝑦𝑋𝑧𝑋)) → ((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧)))
32ralrimivvva 3192 . . 3 (𝜑 → ∀𝑥𝑋𝑦𝑋𝑧𝑋 ((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧)))
4 isgrpda.4 . . . 4 (𝜑𝑈𝑋)
5 isgrpda.5 . . . . . 6 ((𝜑𝑥𝑋) → (𝑈𝐺𝑥) = 𝑥)
6 isgrpda.6 . . . . . . 7 ((𝜑𝑥𝑋) → ∃𝑛𝑋 (𝑛𝐺𝑥) = 𝑈)
7 oveq1 7157 . . . . . . . . 9 (𝑦 = 𝑛 → (𝑦𝐺𝑥) = (𝑛𝐺𝑥))
87eqeq1d 2823 . . . . . . . 8 (𝑦 = 𝑛 → ((𝑦𝐺𝑥) = 𝑈 ↔ (𝑛𝐺𝑥) = 𝑈))
98cbvrexvw 3450 . . . . . . 7 (∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑈 ↔ ∃𝑛𝑋 (𝑛𝐺𝑥) = 𝑈)
106, 9sylibr 236 . . . . . 6 ((𝜑𝑥𝑋) → ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑈)
115, 10jca 514 . . . . 5 ((𝜑𝑥𝑋) → ((𝑈𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑈))
1211ralrimiva 3182 . . . 4 (𝜑 → ∀𝑥𝑋 ((𝑈𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑈))
13 oveq1 7157 . . . . . . . 8 (𝑢 = 𝑈 → (𝑢𝐺𝑥) = (𝑈𝐺𝑥))
1413eqeq1d 2823 . . . . . . 7 (𝑢 = 𝑈 → ((𝑢𝐺𝑥) = 𝑥 ↔ (𝑈𝐺𝑥) = 𝑥))
15 eqeq2 2833 . . . . . . . 8 (𝑢 = 𝑈 → ((𝑦𝐺𝑥) = 𝑢 ↔ (𝑦𝐺𝑥) = 𝑈))
1615rexbidv 3297 . . . . . . 7 (𝑢 = 𝑈 → (∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑢 ↔ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑈))
1714, 16anbi12d 632 . . . . . 6 (𝑢 = 𝑈 → (((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑢) ↔ ((𝑈𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑈)))
1817ralbidv 3197 . . . . 5 (𝑢 = 𝑈 → (∀𝑥𝑋 ((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑢) ↔ ∀𝑥𝑋 ((𝑈𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑈)))
1918rspcev 3622 . . . 4 ((𝑈𝑋 ∧ ∀𝑥𝑋 ((𝑈𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑈)) → ∃𝑢𝑋𝑥𝑋 ((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑢))
204, 12, 19syl2anc 586 . . 3 (𝜑 → ∃𝑢𝑋𝑥𝑋 ((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑢))
214adantr 483 . . . . . . . . . 10 ((𝜑𝑥𝑋) → 𝑈𝑋)
22 simpr 487 . . . . . . . . . 10 ((𝜑𝑥𝑋) → 𝑥𝑋)
235eqcomd 2827 . . . . . . . . . 10 ((𝜑𝑥𝑋) → 𝑥 = (𝑈𝐺𝑥))
24 rspceov 7197 . . . . . . . . . 10 ((𝑈𝑋𝑥𝑋𝑥 = (𝑈𝐺𝑥)) → ∃𝑦𝑋𝑧𝑋 𝑥 = (𝑦𝐺𝑧))
2521, 22, 23, 24syl3anc 1367 . . . . . . . . 9 ((𝜑𝑥𝑋) → ∃𝑦𝑋𝑧𝑋 𝑥 = (𝑦𝐺𝑧))
2625ralrimiva 3182 . . . . . . . 8 (𝜑 → ∀𝑥𝑋𝑦𝑋𝑧𝑋 𝑥 = (𝑦𝐺𝑧))
27 foov 7316 . . . . . . . 8 (𝐺:(𝑋 × 𝑋)–onto𝑋 ↔ (𝐺:(𝑋 × 𝑋)⟶𝑋 ∧ ∀𝑥𝑋𝑦𝑋𝑧𝑋 𝑥 = (𝑦𝐺𝑧)))
281, 26, 27sylanbrc 585 . . . . . . 7 (𝜑𝐺:(𝑋 × 𝑋)–onto𝑋)
29 forn 6587 . . . . . . 7 (𝐺:(𝑋 × 𝑋)–onto𝑋 → ran 𝐺 = 𝑋)
3028, 29syl 17 . . . . . 6 (𝜑 → ran 𝐺 = 𝑋)
3130sqxpeqd 5581 . . . . 5 (𝜑 → (ran 𝐺 × ran 𝐺) = (𝑋 × 𝑋))
3231, 30feq23d 6503 . . . 4 (𝜑 → (𝐺:(ran 𝐺 × ran 𝐺)⟶ran 𝐺𝐺:(𝑋 × 𝑋)⟶𝑋))
3330raleqdv 3415 . . . . . 6 (𝜑 → (∀𝑧 ∈ ran 𝐺((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧)) ↔ ∀𝑧𝑋 ((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧))))
3430, 33raleqbidv 3401 . . . . 5 (𝜑 → (∀𝑦 ∈ ran 𝐺𝑧 ∈ ran 𝐺((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧)) ↔ ∀𝑦𝑋𝑧𝑋 ((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧))))
3530, 34raleqbidv 3401 . . . 4 (𝜑 → (∀𝑥 ∈ ran 𝐺𝑦 ∈ ran 𝐺𝑧 ∈ ran 𝐺((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧)) ↔ ∀𝑥𝑋𝑦𝑋𝑧𝑋 ((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧))))
3630rexeqdv 3416 . . . . . . 7 (𝜑 → (∃𝑦 ∈ ran 𝐺(𝑦𝐺𝑥) = 𝑢 ↔ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑢))
3736anbi2d 630 . . . . . 6 (𝜑 → (((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦 ∈ ran 𝐺(𝑦𝐺𝑥) = 𝑢) ↔ ((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑢)))
3830, 37raleqbidv 3401 . . . . 5 (𝜑 → (∀𝑥 ∈ ran 𝐺((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦 ∈ ran 𝐺(𝑦𝐺𝑥) = 𝑢) ↔ ∀𝑥𝑋 ((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑢)))
3930, 38rexeqbidv 3402 . . . 4 (𝜑 → (∃𝑢 ∈ ran 𝐺𝑥 ∈ ran 𝐺((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦 ∈ ran 𝐺(𝑦𝐺𝑥) = 𝑢) ↔ ∃𝑢𝑋𝑥𝑋 ((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑢)))
4032, 35, 393anbi123d 1432 . . 3 (𝜑 → ((𝐺:(ran 𝐺 × ran 𝐺)⟶ran 𝐺 ∧ ∀𝑥 ∈ ran 𝐺𝑦 ∈ ran 𝐺𝑧 ∈ ran 𝐺((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧)) ∧ ∃𝑢 ∈ ran 𝐺𝑥 ∈ ran 𝐺((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦 ∈ ran 𝐺(𝑦𝐺𝑥) = 𝑢)) ↔ (𝐺:(𝑋 × 𝑋)⟶𝑋 ∧ ∀𝑥𝑋𝑦𝑋𝑧𝑋 ((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧)) ∧ ∃𝑢𝑋𝑥𝑋 ((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦𝑋 (𝑦𝐺𝑥) = 𝑢))))
411, 3, 20, 40mpbir3and 1338 . 2 (𝜑 → (𝐺:(ran 𝐺 × ran 𝐺)⟶ran 𝐺 ∧ ∀𝑥 ∈ ran 𝐺𝑦 ∈ ran 𝐺𝑧 ∈ ran 𝐺((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧)) ∧ ∃𝑢 ∈ ran 𝐺𝑥 ∈ ran 𝐺((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦 ∈ ran 𝐺(𝑦𝐺𝑥) = 𝑢)))
42 isgrpda.1 . . . . 5 (𝜑𝑋 ∈ V)
4342, 42xpexd 7468 . . . 4 (𝜑 → (𝑋 × 𝑋) ∈ V)
44 fex 6983 . . . 4 ((𝐺:(𝑋 × 𝑋)⟶𝑋 ∧ (𝑋 × 𝑋) ∈ V) → 𝐺 ∈ V)
451, 43, 44syl2anc 586 . . 3 (𝜑𝐺 ∈ V)
46 eqid 2821 . . . 4 ran 𝐺 = ran 𝐺
4746isgrpo 28268 . . 3 (𝐺 ∈ V → (𝐺 ∈ GrpOp ↔ (𝐺:(ran 𝐺 × ran 𝐺)⟶ran 𝐺 ∧ ∀𝑥 ∈ ran 𝐺𝑦 ∈ ran 𝐺𝑧 ∈ ran 𝐺((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧)) ∧ ∃𝑢 ∈ ran 𝐺𝑥 ∈ ran 𝐺((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦 ∈ ran 𝐺(𝑦𝐺𝑥) = 𝑢))))
4845, 47syl 17 . 2 (𝜑 → (𝐺 ∈ GrpOp ↔ (𝐺:(ran 𝐺 × ran 𝐺)⟶ran 𝐺 ∧ ∀𝑥 ∈ ran 𝐺𝑦 ∈ ran 𝐺𝑧 ∈ ran 𝐺((𝑥𝐺𝑦)𝐺𝑧) = (𝑥𝐺(𝑦𝐺𝑧)) ∧ ∃𝑢 ∈ ran 𝐺𝑥 ∈ ran 𝐺((𝑢𝐺𝑥) = 𝑥 ∧ ∃𝑦 ∈ ran 𝐺(𝑦𝐺𝑥) = 𝑢))))
4941, 48mpbird 259 1 (𝜑𝐺 ∈ GrpOp)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 398  w3a 1083   = wceq 1533  wcel 2110  wral 3138  wrex 3139  Vcvv 3494   × cxp 5547  ran crn 5550  wf 6345  ontowfo 6347  (class class class)co 7150  GrpOpcgr 28260
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1792  ax-4 1806  ax-5 1907  ax-6 1966  ax-7 2011  ax-8 2112  ax-9 2120  ax-10 2141  ax-11 2157  ax-12 2173  ax-ext 2793  ax-rep 5182  ax-sep 5195  ax-nul 5202  ax-pow 5258  ax-pr 5321  ax-un 7455
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3an 1085  df-tru 1536  df-ex 1777  df-nf 1781  df-sb 2066  df-mo 2618  df-eu 2650  df-clab 2800  df-cleq 2814  df-clel 2893  df-nfc 2963  df-ne 3017  df-ral 3143  df-rex 3144  df-reu 3145  df-rab 3147  df-v 3496  df-sbc 3772  df-csb 3883  df-dif 3938  df-un 3940  df-in 3942  df-ss 3951  df-nul 4291  df-if 4467  df-pw 4540  df-sn 4561  df-pr 4563  df-op 4567  df-uni 4832  df-iun 4913  df-br 5059  df-opab 5121  df-mpt 5139  df-id 5454  df-xp 5555  df-rel 5556  df-cnv 5557  df-co 5558  df-dm 5559  df-rn 5560  df-res 5561  df-ima 5562  df-iota 6308  df-fun 6351  df-fn 6352  df-f 6353  df-f1 6354  df-fo 6355  df-f1o 6356  df-fv 6357  df-ov 7153  df-grpo 28264
This theorem is referenced by:  isdrngo2  35230
  Copyright terms: Public domain W3C validator