| Step | Hyp | Ref | Expression | 
|---|
| 1 |  | grprcan.1 | . . . . . . . 8
⊢ 𝑋 = ran 𝐺 | 
| 2 |  | eqid 2737 | . . . . . . . 8
⊢
(GId‘𝐺) =
(GId‘𝐺) | 
| 3 | 1, 2 | grpoidinv2 30534 | . . . . . . 7
⊢ ((𝐺 ∈ GrpOp ∧ 𝐶 ∈ 𝑋) → ((((GId‘𝐺)𝐺𝐶) = 𝐶 ∧ (𝐶𝐺(GId‘𝐺)) = 𝐶) ∧ ∃𝑦 ∈ 𝑋 ((𝑦𝐺𝐶) = (GId‘𝐺) ∧ (𝐶𝐺𝑦) = (GId‘𝐺)))) | 
| 4 |  | simpr 484 | . . . . . . . . 9
⊢ (((𝑦𝐺𝐶) = (GId‘𝐺) ∧ (𝐶𝐺𝑦) = (GId‘𝐺)) → (𝐶𝐺𝑦) = (GId‘𝐺)) | 
| 5 | 4 | reximi 3084 | . . . . . . . 8
⊢
(∃𝑦 ∈
𝑋 ((𝑦𝐺𝐶) = (GId‘𝐺) ∧ (𝐶𝐺𝑦) = (GId‘𝐺)) → ∃𝑦 ∈ 𝑋 (𝐶𝐺𝑦) = (GId‘𝐺)) | 
| 6 | 5 | adantl 481 | . . . . . . 7
⊢
(((((GId‘𝐺)𝐺𝐶) = 𝐶 ∧ (𝐶𝐺(GId‘𝐺)) = 𝐶) ∧ ∃𝑦 ∈ 𝑋 ((𝑦𝐺𝐶) = (GId‘𝐺) ∧ (𝐶𝐺𝑦) = (GId‘𝐺))) → ∃𝑦 ∈ 𝑋 (𝐶𝐺𝑦) = (GId‘𝐺)) | 
| 7 | 3, 6 | syl 17 | . . . . . 6
⊢ ((𝐺 ∈ GrpOp ∧ 𝐶 ∈ 𝑋) → ∃𝑦 ∈ 𝑋 (𝐶𝐺𝑦) = (GId‘𝐺)) | 
| 8 | 7 | ad2ant2rl 749 | . . . . 5
⊢ (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ∃𝑦 ∈ 𝑋 (𝐶𝐺𝑦) = (GId‘𝐺)) | 
| 9 |  | oveq1 7438 | . . . . . . . . . . . 12
⊢ ((𝐴𝐺𝐶) = (𝐵𝐺𝐶) → ((𝐴𝐺𝐶)𝐺𝑦) = ((𝐵𝐺𝐶)𝐺𝑦)) | 
| 10 | 9 | ad2antll 729 | . . . . . . . . . . 11
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝑦 ∈ 𝑋 ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶))) → ((𝐴𝐺𝐶)𝐺𝑦) = ((𝐵𝐺𝐶)𝐺𝑦)) | 
| 11 | 1 | grpoass 30522 | . . . . . . . . . . . . . 14
⊢ ((𝐺 ∈ GrpOp ∧ (𝐴 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → ((𝐴𝐺𝐶)𝐺𝑦) = (𝐴𝐺(𝐶𝐺𝑦))) | 
| 12 | 11 | 3anassrs 1361 | . . . . . . . . . . . . 13
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ 𝐶 ∈ 𝑋) ∧ 𝑦 ∈ 𝑋) → ((𝐴𝐺𝐶)𝐺𝑦) = (𝐴𝐺(𝐶𝐺𝑦))) | 
| 13 | 12 | adantlrl 720 | . . . . . . . . . . . 12
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ 𝑦 ∈ 𝑋) → ((𝐴𝐺𝐶)𝐺𝑦) = (𝐴𝐺(𝐶𝐺𝑦))) | 
| 14 | 13 | adantrr 717 | . . . . . . . . . . 11
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝑦 ∈ 𝑋 ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶))) → ((𝐴𝐺𝐶)𝐺𝑦) = (𝐴𝐺(𝐶𝐺𝑦))) | 
| 15 | 1 | grpoass 30522 | . . . . . . . . . . . . . . 15
⊢ ((𝐺 ∈ GrpOp ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → ((𝐵𝐺𝐶)𝐺𝑦) = (𝐵𝐺(𝐶𝐺𝑦))) | 
| 16 | 15 | 3exp2 1355 | . . . . . . . . . . . . . 14
⊢ (𝐺 ∈ GrpOp → (𝐵 ∈ 𝑋 → (𝐶 ∈ 𝑋 → (𝑦 ∈ 𝑋 → ((𝐵𝐺𝐶)𝐺𝑦) = (𝐵𝐺(𝐶𝐺𝑦)))))) | 
| 17 | 16 | imp42 426 | . . . . . . . . . . . . 13
⊢ (((𝐺 ∈ GrpOp ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ 𝑦 ∈ 𝑋) → ((𝐵𝐺𝐶)𝐺𝑦) = (𝐵𝐺(𝐶𝐺𝑦))) | 
| 18 | 17 | adantllr 719 | . . . . . . . . . . . 12
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ 𝑦 ∈ 𝑋) → ((𝐵𝐺𝐶)𝐺𝑦) = (𝐵𝐺(𝐶𝐺𝑦))) | 
| 19 | 18 | adantrr 717 | . . . . . . . . . . 11
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝑦 ∈ 𝑋 ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶))) → ((𝐵𝐺𝐶)𝐺𝑦) = (𝐵𝐺(𝐶𝐺𝑦))) | 
| 20 | 10, 14, 19 | 3eqtr3d 2785 | . . . . . . . . . 10
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝑦 ∈ 𝑋 ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶))) → (𝐴𝐺(𝐶𝐺𝑦)) = (𝐵𝐺(𝐶𝐺𝑦))) | 
| 21 | 20 | adantrrl 724 | . . . . . . . . 9
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝑦 ∈ 𝑋 ∧ ((𝐶𝐺𝑦) = (GId‘𝐺) ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶)))) → (𝐴𝐺(𝐶𝐺𝑦)) = (𝐵𝐺(𝐶𝐺𝑦))) | 
| 22 |  | oveq2 7439 | . . . . . . . . . . 11
⊢ ((𝐶𝐺𝑦) = (GId‘𝐺) → (𝐴𝐺(𝐶𝐺𝑦)) = (𝐴𝐺(GId‘𝐺))) | 
| 23 | 22 | ad2antrl 728 | . . . . . . . . . 10
⊢ ((𝑦 ∈ 𝑋 ∧ ((𝐶𝐺𝑦) = (GId‘𝐺) ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶))) → (𝐴𝐺(𝐶𝐺𝑦)) = (𝐴𝐺(GId‘𝐺))) | 
| 24 | 23 | adantl 481 | . . . . . . . . 9
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝑦 ∈ 𝑋 ∧ ((𝐶𝐺𝑦) = (GId‘𝐺) ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶)))) → (𝐴𝐺(𝐶𝐺𝑦)) = (𝐴𝐺(GId‘𝐺))) | 
| 25 |  | oveq2 7439 | . . . . . . . . . . 11
⊢ ((𝐶𝐺𝑦) = (GId‘𝐺) → (𝐵𝐺(𝐶𝐺𝑦)) = (𝐵𝐺(GId‘𝐺))) | 
| 26 | 25 | ad2antrl 728 | . . . . . . . . . 10
⊢ ((𝑦 ∈ 𝑋 ∧ ((𝐶𝐺𝑦) = (GId‘𝐺) ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶))) → (𝐵𝐺(𝐶𝐺𝑦)) = (𝐵𝐺(GId‘𝐺))) | 
| 27 | 26 | adantl 481 | . . . . . . . . 9
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝑦 ∈ 𝑋 ∧ ((𝐶𝐺𝑦) = (GId‘𝐺) ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶)))) → (𝐵𝐺(𝐶𝐺𝑦)) = (𝐵𝐺(GId‘𝐺))) | 
| 28 | 21, 24, 27 | 3eqtr3d 2785 | . . . . . . . 8
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝑦 ∈ 𝑋 ∧ ((𝐶𝐺𝑦) = (GId‘𝐺) ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶)))) → (𝐴𝐺(GId‘𝐺)) = (𝐵𝐺(GId‘𝐺))) | 
| 29 | 1, 2 | grporid 30536 | . . . . . . . . 9
⊢ ((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) → (𝐴𝐺(GId‘𝐺)) = 𝐴) | 
| 30 | 29 | ad2antrr 726 | . . . . . . . 8
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝑦 ∈ 𝑋 ∧ ((𝐶𝐺𝑦) = (GId‘𝐺) ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶)))) → (𝐴𝐺(GId‘𝐺)) = 𝐴) | 
| 31 | 1, 2 | grporid 30536 | . . . . . . . . . 10
⊢ ((𝐺 ∈ GrpOp ∧ 𝐵 ∈ 𝑋) → (𝐵𝐺(GId‘𝐺)) = 𝐵) | 
| 32 | 31 | ad2ant2r 747 | . . . . . . . . 9
⊢ (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → (𝐵𝐺(GId‘𝐺)) = 𝐵) | 
| 33 | 32 | adantr 480 | . . . . . . . 8
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝑦 ∈ 𝑋 ∧ ((𝐶𝐺𝑦) = (GId‘𝐺) ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶)))) → (𝐵𝐺(GId‘𝐺)) = 𝐵) | 
| 34 | 28, 30, 33 | 3eqtr3d 2785 | . . . . . . 7
⊢ ((((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) ∧ (𝑦 ∈ 𝑋 ∧ ((𝐶𝐺𝑦) = (GId‘𝐺) ∧ (𝐴𝐺𝐶) = (𝐵𝐺𝐶)))) → 𝐴 = 𝐵) | 
| 35 | 34 | exp45 438 | . . . . . 6
⊢ (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → (𝑦 ∈ 𝑋 → ((𝐶𝐺𝑦) = (GId‘𝐺) → ((𝐴𝐺𝐶) = (𝐵𝐺𝐶) → 𝐴 = 𝐵)))) | 
| 36 | 35 | rexlimdv 3153 | . . . . 5
⊢ (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → (∃𝑦 ∈ 𝑋 (𝐶𝐺𝑦) = (GId‘𝐺) → ((𝐴𝐺𝐶) = (𝐵𝐺𝐶) → 𝐴 = 𝐵))) | 
| 37 | 8, 36 | mpd 15 | . . . 4
⊢ (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((𝐴𝐺𝐶) = (𝐵𝐺𝐶) → 𝐴 = 𝐵)) | 
| 38 |  | oveq1 7438 | . . . 4
⊢ (𝐴 = 𝐵 → (𝐴𝐺𝐶) = (𝐵𝐺𝐶)) | 
| 39 | 37, 38 | impbid1 225 | . . 3
⊢ (((𝐺 ∈ GrpOp ∧ 𝐴 ∈ 𝑋) ∧ (𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((𝐴𝐺𝐶) = (𝐵𝐺𝐶) ↔ 𝐴 = 𝐵)) | 
| 40 | 39 | exp43 436 | . 2
⊢ (𝐺 ∈ GrpOp → (𝐴 ∈ 𝑋 → (𝐵 ∈ 𝑋 → (𝐶 ∈ 𝑋 → ((𝐴𝐺𝐶) = (𝐵𝐺𝐶) ↔ 𝐴 = 𝐵))))) | 
| 41 | 40 | 3imp2 1350 | 1
⊢ ((𝐺 ∈ GrpOp ∧ (𝐴 ∈ 𝑋 ∧ 𝐵 ∈ 𝑋 ∧ 𝐶 ∈ 𝑋)) → ((𝐴𝐺𝐶) = (𝐵𝐺𝐶) ↔ 𝐴 = 𝐵)) |