Metamath Proof Explorer


Theorem domnrcanb

Description: Right-cancellation law for domains, biconditional version of domnrcan . (Contributed by SN, 21-Jun-2025)

Ref Expression
Hypotheses domnrcan.b ⊢ B = Base R
domnrcan.0 ⊢ 0 ˙ = 0 R
domnrcan.m ⊢ · ˙ = ⋅ R
domnrcan.x ⊢ φ → X ∈ B
domnrcan.y ⊢ φ → Y ∈ B
domnrcan.z ⊢ φ → Z ∈ B ∖ 0 ˙
domnrcan.r ⊢ φ → R ∈ Domn
Assertion domnrcanb ⊢ φ → X · ˙ Z = Y · ˙ Z ↔ X = Y

Proof

Step Hyp Ref Expression
1 domnrcan.b ⊢ B = Base R
2 domnrcan.0 ⊢ 0 ˙ = 0 R
3 domnrcan.m ⊢ · ˙ = ⋅ R
4 domnrcan.x ⊢ φ → X ∈ B
5 domnrcan.y ⊢ φ → Y ∈ B
6 domnrcan.z ⊢ φ → Z ∈ B ∖ 0 ˙
7 domnrcan.r ⊢ φ → R ∈ Domn
8 oveq1 ⊢ a = X → a · ˙ c = X · ˙ c
9 8 eqeq1d ⊢ a = X → a · ˙ c = b · ˙ c ↔ X · ˙ c = b · ˙ c
10 eqeq1 ⊢ a = X → a = b ↔ X = b
11 9 10 imbi12d ⊢ a = X → a · ˙ c = b · ˙ c → a = b ↔ X · ˙ c = b · ˙ c → X = b
12 oveq1 ⊢ b = Y → b · ˙ c = Y · ˙ c
13 12 eqeq2d ⊢ b = Y → X · ˙ c = b · ˙ c ↔ X · ˙ c = Y · ˙ c
14 eqeq2 ⊢ b = Y → X = b ↔ X = Y
15 13 14 imbi12d ⊢ b = Y → X · ˙ c = b · ˙ c → X = b ↔ X · ˙ c = Y · ˙ c → X = Y
16 oveq2 ⊢ c = Z → X · ˙ c = X · ˙ Z
17 oveq2 ⊢ c = Z → Y · ˙ c = Y · ˙ Z
18 16 17 eqeq12d ⊢ c = Z → X · ˙ c = Y · ˙ c ↔ X · ˙ Z = Y · ˙ Z
19 18 imbi1d ⊢ c = Z → X · ˙ c = Y · ˙ c → X = Y ↔ X · ˙ Z = Y · ˙ Z → X = Y
20 1 2 3 isdomn4r ⊢ R ∈ Domn ↔ R ∈ NzRing ∧ ∀ a ∈ B ∀ b ∈ B ∀ c ∈ B ∖ 0 ˙ a · ˙ c = b · ˙ c → a = b
21 7 20 sylib ⊢ φ → R ∈ NzRing ∧ ∀ a ∈ B ∀ b ∈ B ∀ c ∈ B ∖ 0 ˙ a · ˙ c = b · ˙ c → a = b
22 21 simprd ⊢ φ → ∀ a ∈ B ∀ b ∈ B ∀ c ∈ B ∖ 0 ˙ a · ˙ c = b · ˙ c → a = b
23 11 15 19 22 4 5 6 rspc3dv ⊢ φ → X · ˙ Z = Y · ˙ Z → X = Y
24 oveq1 ⊢ X = Y → X · ˙ Z = Y · ˙ Z
25 23 24 impbid1 ⊢ φ → X · ˙ Z = Y · ˙ Z ↔ X = Y