Metamath Proof Explorer


Theorem isidom3

Description: The predicate "is a domain", alternate expression. (Contributed by Jeff Madsen, 19-Jun-2010) (Revised by AV, 12-Jul-2026)

Ref Expression
Hypotheses isidom3.b B = Base R
isidom3.t · ˙ = R
isidom3.0 0 ˙ = 0 R
isidom3.1 1 ˙ = 1 R
Assertion isidom3 R IDomn R CRing 0 ˙ 1 ˙ a B b B a · ˙ b = 0 ˙ a = 0 ˙ b = 0 ˙

Proof

Step Hyp Ref Expression
1 isidom3.b B = Base R
2 isidom3.t · ˙ = R
3 isidom3.0 0 ˙ = 0 R
4 isidom3.1 1 ˙ = 1 R
5 isidom2 Could not format ( R e. IDomn <-> ( R e. PrmRing /\ R e. CRing ) ) : No typesetting found for |- ( R e. IDomn <-> ( R e. PrmRing /\ R e. CRing ) ) with typecode |-
6 eqid PrmIdeal R = PrmIdeal R
7 3 6 isprmrng Could not format ( R e. PrmRing <-> ( R e. Ring /\ { .0. } e. ( PrmIdeal ` R ) ) ) : No typesetting found for |- ( R e. PrmRing <-> ( R e. Ring /\ { .0. } e. ( PrmIdeal ` R ) ) ) with typecode |-
8 1 2 isprmidlc R CRing 0 ˙ PrmIdeal R 0 ˙ LIdeal R 0 ˙ B a B b B a · ˙ b 0 ˙ a 0 ˙ b 0 ˙
9 crngring R CRing R Ring
10 9 biantrurd R CRing 0 ˙ PrmIdeal R R Ring 0 ˙ PrmIdeal R
11 3anass 0 ˙ LIdeal R 0 ˙ B a B b B a · ˙ b 0 ˙ a 0 ˙ b 0 ˙ 0 ˙ LIdeal R 0 ˙ B a B b B a · ˙ b 0 ˙ a 0 ˙ b 0 ˙
12 eqid 2Ideal R = 2Ideal R
13 12 3 2idl0 R Ring 0 ˙ 2Ideal R
14 9 13 syl R CRing 0 ˙ 2Ideal R
15 14 2idllidld R CRing 0 ˙ LIdeal R
16 15 biantrurd R CRing 0 ˙ B a B b B a · ˙ b 0 ˙ a 0 ˙ b 0 ˙ 0 ˙ LIdeal R 0 ˙ B a B b B a · ˙ b 0 ˙ a 0 ˙ b 0 ˙
17 1 4 ringidcl R Ring 1 ˙ B
18 eleq2 0 ˙ = B 1 ˙ 0 ˙ 1 ˙ B
19 elsni 1 ˙ 0 ˙ 1 ˙ = 0 ˙
20 19 eqcomd 1 ˙ 0 ˙ 0 ˙ = 1 ˙
21 18 20 biimtrrdi 0 ˙ = B 1 ˙ B 0 ˙ = 1 ˙
22 17 21 syl5com R Ring 0 ˙ = B 0 ˙ = 1 ˙
23 1 3 4 0ring01eqbi R Ring B 1 𝑜 1 ˙ = 0 ˙
24 eqcom 1 ˙ = 0 ˙ 0 ˙ = 1 ˙
25 23 24 bitrdi R Ring B 1 𝑜 0 ˙ = 1 ˙
26 1 3 ring0cl R Ring 0 ˙ B
27 en1eqsn 0 ˙ B B 1 𝑜 B = 0 ˙
28 27 eqcomd 0 ˙ B B 1 𝑜 0 ˙ = B
29 28 ex 0 ˙ B B 1 𝑜 0 ˙ = B
30 26 29 syl R Ring B 1 𝑜 0 ˙ = B
31 25 30 sylbird R Ring 0 ˙ = 1 ˙ 0 ˙ = B
32 22 31 impbid R Ring 0 ˙ = B 0 ˙ = 1 ˙
33 9 32 syl R CRing 0 ˙ = B 0 ˙ = 1 ˙
34 33 necon3bid R CRing 0 ˙ B 0 ˙ 1 ˙
35 ovex a · ˙ b V
36 35 elsn a · ˙ b 0 ˙ a · ˙ b = 0 ˙
37 velsn a 0 ˙ a = 0 ˙
38 velsn b 0 ˙ b = 0 ˙
39 37 38 orbi12i a 0 ˙ b 0 ˙ a = 0 ˙ b = 0 ˙
40 36 39 imbi12i a · ˙ b 0 ˙ a 0 ˙ b 0 ˙ a · ˙ b = 0 ˙ a = 0 ˙ b = 0 ˙
41 40 a1i R CRing a · ˙ b 0 ˙ a 0 ˙ b 0 ˙ a · ˙ b = 0 ˙ a = 0 ˙ b = 0 ˙
42 41 2ralbidv R CRing a B b B a · ˙ b 0 ˙ a 0 ˙ b 0 ˙ a B b B a · ˙ b = 0 ˙ a = 0 ˙ b = 0 ˙
43 34 42 anbi12d R CRing 0 ˙ B a B b B a · ˙ b 0 ˙ a 0 ˙ b 0 ˙ 0 ˙ 1 ˙ a B b B a · ˙ b = 0 ˙ a = 0 ˙ b = 0 ˙
44 16 43 bitr3d R CRing 0 ˙ LIdeal R 0 ˙ B a B b B a · ˙ b 0 ˙ a 0 ˙ b 0 ˙ 0 ˙ 1 ˙ a B b B a · ˙ b = 0 ˙ a = 0 ˙ b = 0 ˙
45 11 44 bitrid R CRing 0 ˙ LIdeal R 0 ˙ B a B b B a · ˙ b 0 ˙ a 0 ˙ b 0 ˙ 0 ˙ 1 ˙ a B b B a · ˙ b = 0 ˙ a = 0 ˙ b = 0 ˙
46 8 10 45 3bitr3d R CRing R Ring 0 ˙ PrmIdeal R 0 ˙ 1 ˙ a B b B a · ˙ b = 0 ˙ a = 0 ˙ b = 0 ˙
47 7 46 bitrid Could not format ( R e. CRing -> ( R e. PrmRing <-> ( .0. =/= .1. /\ A. a e. B A. b e. B ( ( a .x. b ) = .0. -> ( a = .0. \/ b = .0. ) ) ) ) ) : No typesetting found for |- ( R e. CRing -> ( R e. PrmRing <-> ( .0. =/= .1. /\ A. a e. B A. b e. B ( ( a .x. b ) = .0. -> ( a = .0. \/ b = .0. ) ) ) ) ) with typecode |-
48 47 pm5.32i Could not format ( ( R e. CRing /\ R e. PrmRing ) <-> ( R e. CRing /\ ( .0. =/= .1. /\ A. a e. B A. b e. B ( ( a .x. b ) = .0. -> ( a = .0. \/ b = .0. ) ) ) ) ) : No typesetting found for |- ( ( R e. CRing /\ R e. PrmRing ) <-> ( R e. CRing /\ ( .0. =/= .1. /\ A. a e. B A. b e. B ( ( a .x. b ) = .0. -> ( a = .0. \/ b = .0. ) ) ) ) ) with typecode |-
49 ancom Could not format ( ( R e. PrmRing /\ R e. CRing ) <-> ( R e. CRing /\ R e. PrmRing ) ) : No typesetting found for |- ( ( R e. PrmRing /\ R e. CRing ) <-> ( R e. CRing /\ R e. PrmRing ) ) with typecode |-
50 3anass R CRing 0 ˙ 1 ˙ a B b B a · ˙ b = 0 ˙ a = 0 ˙ b = 0 ˙ R CRing 0 ˙ 1 ˙ a B b B a · ˙ b = 0 ˙ a = 0 ˙ b = 0 ˙
51 48 49 50 3bitr4i Could not format ( ( R e. PrmRing /\ R e. CRing ) <-> ( R e. CRing /\ .0. =/= .1. /\ A. a e. B A. b e. B ( ( a .x. b ) = .0. -> ( a = .0. \/ b = .0. ) ) ) ) : No typesetting found for |- ( ( R e. PrmRing /\ R e. CRing ) <-> ( R e. CRing /\ .0. =/= .1. /\ A. a e. B A. b e. B ( ( a .x. b ) = .0. -> ( a = .0. \/ b = .0. ) ) ) ) with typecode |-
52 5 51 bitri R IDomn R CRing 0 ˙ 1 ˙ a B b B a · ˙ b = 0 ˙ a = 0 ˙ b = 0 ˙