| Step |
Hyp |
Ref |
Expression |
| 1 |
|
rhmval0.b |
⊢ 𝐵 = ( Base ‘ 𝑅 ) |
| 2 |
|
rhmval0.c |
⊢ 𝐶 = ( Base ‘ 𝑆 ) |
| 3 |
|
rhmval0.1 |
⊢ 1 = ( 1r ‘ 𝑅 ) |
| 4 |
|
rhmval0.i |
⊢ 𝑁 = ( 1r ‘ 𝑆 ) |
| 5 |
|
rhmval0.m |
⊢ · = ( .r ‘ 𝑅 ) |
| 6 |
|
rhmval0.n |
⊢ × = ( .r ‘ 𝑆 ) |
| 7 |
|
rhmval0.p |
⊢ + = ( +g ‘ 𝑅 ) |
| 8 |
|
rhmval0.q |
⊢ ⨣ = ( +g ‘ 𝑆 ) |
| 9 |
1 2 3 4 5 6 7 8
|
rhmval0 |
⊢ ( ( 𝑅 ∈ Ring ∧ 𝑆 ∈ Ring ) → ( 𝑅 RingHom 𝑆 ) = { 𝑓 ∈ ( 𝐶 ↑m 𝐵 ) ∣ ( ( 𝑓 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑓 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) ⨣ ( 𝑓 ‘ 𝑦 ) ) ∧ ( 𝑓 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) × ( 𝑓 ‘ 𝑦 ) ) ) ) } ) |
| 10 |
9
|
eleq2d |
⊢ ( ( 𝑅 ∈ Ring ∧ 𝑆 ∈ Ring ) → ( 𝐹 ∈ ( 𝑅 RingHom 𝑆 ) ↔ 𝐹 ∈ { 𝑓 ∈ ( 𝐶 ↑m 𝐵 ) ∣ ( ( 𝑓 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑓 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) ⨣ ( 𝑓 ‘ 𝑦 ) ) ∧ ( 𝑓 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) × ( 𝑓 ‘ 𝑦 ) ) ) ) } ) ) |
| 11 |
2
|
fvexi |
⊢ 𝐶 ∈ V |
| 12 |
1
|
fvexi |
⊢ 𝐵 ∈ V |
| 13 |
11 12
|
elmap |
⊢ ( 𝐹 ∈ ( 𝐶 ↑m 𝐵 ) ↔ 𝐹 : 𝐵 ⟶ 𝐶 ) |
| 14 |
13
|
anbi1i |
⊢ ( ( 𝐹 ∈ ( 𝐶 ↑m 𝐵 ) ∧ ( ( 𝐹 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ∧ ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) ) ) ↔ ( 𝐹 : 𝐵 ⟶ 𝐶 ∧ ( ( 𝐹 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ∧ ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) ) ) ) |
| 15 |
|
fveq1 |
⊢ ( 𝑓 = 𝐹 → ( 𝑓 ‘ 1 ) = ( 𝐹 ‘ 1 ) ) |
| 16 |
15
|
eqeq1d |
⊢ ( 𝑓 = 𝐹 → ( ( 𝑓 ‘ 1 ) = 𝑁 ↔ ( 𝐹 ‘ 1 ) = 𝑁 ) ) |
| 17 |
|
fveq1 |
⊢ ( 𝑓 = 𝐹 → ( 𝑓 ‘ ( 𝑥 + 𝑦 ) ) = ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) ) |
| 18 |
|
fveq1 |
⊢ ( 𝑓 = 𝐹 → ( 𝑓 ‘ 𝑥 ) = ( 𝐹 ‘ 𝑥 ) ) |
| 19 |
|
fveq1 |
⊢ ( 𝑓 = 𝐹 → ( 𝑓 ‘ 𝑦 ) = ( 𝐹 ‘ 𝑦 ) ) |
| 20 |
18 19
|
oveq12d |
⊢ ( 𝑓 = 𝐹 → ( ( 𝑓 ‘ 𝑥 ) ⨣ ( 𝑓 ‘ 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ) |
| 21 |
17 20
|
eqeq12d |
⊢ ( 𝑓 = 𝐹 → ( ( 𝑓 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) ⨣ ( 𝑓 ‘ 𝑦 ) ) ↔ ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ) ) |
| 22 |
|
fveq1 |
⊢ ( 𝑓 = 𝐹 → ( 𝑓 ‘ ( 𝑥 · 𝑦 ) ) = ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) ) |
| 23 |
18 19
|
oveq12d |
⊢ ( 𝑓 = 𝐹 → ( ( 𝑓 ‘ 𝑥 ) × ( 𝑓 ‘ 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) |
| 24 |
22 23
|
eqeq12d |
⊢ ( 𝑓 = 𝐹 → ( ( 𝑓 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) × ( 𝑓 ‘ 𝑦 ) ) ↔ ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) ) |
| 25 |
21 24
|
anbi12d |
⊢ ( 𝑓 = 𝐹 → ( ( ( 𝑓 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) ⨣ ( 𝑓 ‘ 𝑦 ) ) ∧ ( 𝑓 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) × ( 𝑓 ‘ 𝑦 ) ) ) ↔ ( ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ∧ ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) ) ) |
| 26 |
25
|
2ralbidv |
⊢ ( 𝑓 = 𝐹 → ( ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑓 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) ⨣ ( 𝑓 ‘ 𝑦 ) ) ∧ ( 𝑓 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) × ( 𝑓 ‘ 𝑦 ) ) ) ↔ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ∧ ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) ) ) |
| 27 |
16 26
|
anbi12d |
⊢ ( 𝑓 = 𝐹 → ( ( ( 𝑓 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑓 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) ⨣ ( 𝑓 ‘ 𝑦 ) ) ∧ ( 𝑓 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) × ( 𝑓 ‘ 𝑦 ) ) ) ) ↔ ( ( 𝐹 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ∧ ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) ) ) ) |
| 28 |
27
|
elrab |
⊢ ( 𝐹 ∈ { 𝑓 ∈ ( 𝐶 ↑m 𝐵 ) ∣ ( ( 𝑓 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑓 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) ⨣ ( 𝑓 ‘ 𝑦 ) ) ∧ ( 𝑓 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) × ( 𝑓 ‘ 𝑦 ) ) ) ) } ↔ ( 𝐹 ∈ ( 𝐶 ↑m 𝐵 ) ∧ ( ( 𝐹 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ∧ ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) ) ) ) |
| 29 |
|
3anass |
⊢ ( ( 𝐹 : 𝐵 ⟶ 𝐶 ∧ ( 𝐹 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ∧ ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) ) ↔ ( 𝐹 : 𝐵 ⟶ 𝐶 ∧ ( ( 𝐹 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ∧ ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) ) ) ) |
| 30 |
14 28 29
|
3bitr4i |
⊢ ( 𝐹 ∈ { 𝑓 ∈ ( 𝐶 ↑m 𝐵 ) ∣ ( ( 𝑓 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝑓 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) ⨣ ( 𝑓 ‘ 𝑦 ) ) ∧ ( 𝑓 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝑓 ‘ 𝑥 ) × ( 𝑓 ‘ 𝑦 ) ) ) ) } ↔ ( 𝐹 : 𝐵 ⟶ 𝐶 ∧ ( 𝐹 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ∧ ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) ) ) |
| 31 |
10 30
|
bitrdi |
⊢ ( ( 𝑅 ∈ Ring ∧ 𝑆 ∈ Ring ) → ( 𝐹 ∈ ( 𝑅 RingHom 𝑆 ) ↔ ( 𝐹 : 𝐵 ⟶ 𝐶 ∧ ( 𝐹 ‘ 1 ) = 𝑁 ∧ ∀ 𝑥 ∈ 𝐵 ∀ 𝑦 ∈ 𝐵 ( ( 𝐹 ‘ ( 𝑥 + 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) ⨣ ( 𝐹 ‘ 𝑦 ) ) ∧ ( 𝐹 ‘ ( 𝑥 · 𝑦 ) ) = ( ( 𝐹 ‘ 𝑥 ) × ( 𝐹 ‘ 𝑦 ) ) ) ) ) ) |