| Step |
Hyp |
Ref |
Expression |
| 1 |
|
funres |
⊢ ( Fun 𝐴 → Fun ( 𝐴 ↾ 𝐵 ) ) |
| 2 |
|
funfn |
⊢ ( Fun 𝐴 ↔ 𝐴 Fn dom 𝐴 ) |
| 3 |
|
funfn |
⊢ ( Fun ( 𝐴 ↾ 𝐵 ) ↔ ( 𝐴 ↾ 𝐵 ) Fn dom ( 𝐴 ↾ 𝐵 ) ) |
| 4 |
1 2 3
|
3imtr3i |
⊢ ( 𝐴 Fn dom 𝐴 → ( 𝐴 ↾ 𝐵 ) Fn dom ( 𝐴 ↾ 𝐵 ) ) |
| 5 |
|
rnresss |
⊢ ran ( 𝐴 ↾ 𝐵 ) ⊆ ran 𝐴 |
| 6 |
|
sstr |
⊢ ( ( ran ( 𝐴 ↾ 𝐵 ) ⊆ ran 𝐴 ∧ ran 𝐴 ⊆ On ) → ran ( 𝐴 ↾ 𝐵 ) ⊆ On ) |
| 7 |
5 6
|
mpan |
⊢ ( ran 𝐴 ⊆ On → ran ( 𝐴 ↾ 𝐵 ) ⊆ On ) |
| 8 |
4 7
|
anim12i |
⊢ ( ( 𝐴 Fn dom 𝐴 ∧ ran 𝐴 ⊆ On ) → ( ( 𝐴 ↾ 𝐵 ) Fn dom ( 𝐴 ↾ 𝐵 ) ∧ ran ( 𝐴 ↾ 𝐵 ) ⊆ On ) ) |
| 9 |
|
df-f |
⊢ ( 𝐴 : dom 𝐴 ⟶ On ↔ ( 𝐴 Fn dom 𝐴 ∧ ran 𝐴 ⊆ On ) ) |
| 10 |
|
df-f |
⊢ ( ( 𝐴 ↾ 𝐵 ) : dom ( 𝐴 ↾ 𝐵 ) ⟶ On ↔ ( ( 𝐴 ↾ 𝐵 ) Fn dom ( 𝐴 ↾ 𝐵 ) ∧ ran ( 𝐴 ↾ 𝐵 ) ⊆ On ) ) |
| 11 |
8 9 10
|
3imtr4i |
⊢ ( 𝐴 : dom 𝐴 ⟶ On → ( 𝐴 ↾ 𝐵 ) : dom ( 𝐴 ↾ 𝐵 ) ⟶ On ) |
| 12 |
11
|
a1i |
⊢ ( 𝐵 ∈ dom 𝐴 → ( 𝐴 : dom 𝐴 ⟶ On → ( 𝐴 ↾ 𝐵 ) : dom ( 𝐴 ↾ 𝐵 ) ⟶ On ) ) |
| 13 |
|
ordelord |
⊢ ( ( Ord dom 𝐴 ∧ 𝐵 ∈ dom 𝐴 ) → Ord 𝐵 ) |
| 14 |
13
|
expcom |
⊢ ( 𝐵 ∈ dom 𝐴 → ( Ord dom 𝐴 → Ord 𝐵 ) ) |
| 15 |
|
ordin |
⊢ ( ( Ord 𝐵 ∧ Ord dom 𝐴 ) → Ord ( 𝐵 ∩ dom 𝐴 ) ) |
| 16 |
15
|
ex |
⊢ ( Ord 𝐵 → ( Ord dom 𝐴 → Ord ( 𝐵 ∩ dom 𝐴 ) ) ) |
| 17 |
14 16
|
syli |
⊢ ( 𝐵 ∈ dom 𝐴 → ( Ord dom 𝐴 → Ord ( 𝐵 ∩ dom 𝐴 ) ) ) |
| 18 |
|
dmres |
⊢ dom ( 𝐴 ↾ 𝐵 ) = ( 𝐵 ∩ dom 𝐴 ) |
| 19 |
|
ordeq |
⊢ ( dom ( 𝐴 ↾ 𝐵 ) = ( 𝐵 ∩ dom 𝐴 ) → ( Ord dom ( 𝐴 ↾ 𝐵 ) ↔ Ord ( 𝐵 ∩ dom 𝐴 ) ) ) |
| 20 |
18 19
|
ax-mp |
⊢ ( Ord dom ( 𝐴 ↾ 𝐵 ) ↔ Ord ( 𝐵 ∩ dom 𝐴 ) ) |
| 21 |
17 20
|
imbitrrdi |
⊢ ( 𝐵 ∈ dom 𝐴 → ( Ord dom 𝐴 → Ord dom ( 𝐴 ↾ 𝐵 ) ) ) |
| 22 |
|
dmresss |
⊢ dom ( 𝐴 ↾ 𝐵 ) ⊆ dom 𝐴 |
| 23 |
|
ssralv |
⊢ ( dom ( 𝐴 ↾ 𝐵 ) ⊆ dom 𝐴 → ( ∀ 𝑥 ∈ dom 𝐴 ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) → ∀ 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) ) |
| 24 |
22 23
|
ax-mp |
⊢ ( ∀ 𝑥 ∈ dom 𝐴 ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) → ∀ 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) |
| 25 |
|
ssralv |
⊢ ( dom ( 𝐴 ↾ 𝐵 ) ⊆ dom 𝐴 → ( ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) → ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) ) |
| 26 |
22 25
|
ax-mp |
⊢ ( ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) → ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) |
| 27 |
26
|
ralimi |
⊢ ( ∀ 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) → ∀ 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) |
| 28 |
24 27
|
syl |
⊢ ( ∀ 𝑥 ∈ dom 𝐴 ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) → ∀ 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) |
| 29 |
|
resdmss |
⊢ dom ( 𝐴 ↾ 𝐵 ) ⊆ 𝐵 |
| 30 |
|
simpl |
⊢ ( ( 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∧ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ) → 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ) |
| 31 |
29 30
|
sselid |
⊢ ( ( 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∧ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ) → 𝑥 ∈ 𝐵 ) |
| 32 |
31
|
fvresd |
⊢ ( ( 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∧ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ) → ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑥 ) = ( 𝐴 ‘ 𝑥 ) ) |
| 33 |
|
simpr |
⊢ ( ( 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∧ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ) → 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ) |
| 34 |
29 33
|
sselid |
⊢ ( ( 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∧ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ) → 𝑦 ∈ 𝐵 ) |
| 35 |
34
|
fvresd |
⊢ ( ( 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∧ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ) → ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑦 ) = ( 𝐴 ‘ 𝑦 ) ) |
| 36 |
32 35
|
eleq12d |
⊢ ( ( 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∧ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ) → ( ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑥 ) ∈ ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑦 ) ↔ ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) |
| 37 |
36
|
imbi2d |
⊢ ( ( 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∧ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ) → ( ( 𝑥 ∈ 𝑦 → ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑥 ) ∈ ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑦 ) ) ↔ ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) ) |
| 38 |
37
|
ralbidva |
⊢ ( 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) → ( ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑥 ) ∈ ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑦 ) ) ↔ ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) ) |
| 39 |
38
|
ralbiia |
⊢ ( ∀ 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑥 ) ∈ ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑦 ) ) ↔ ∀ 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) |
| 40 |
28 39
|
sylibr |
⊢ ( ∀ 𝑥 ∈ dom 𝐴 ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) → ∀ 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑥 ) ∈ ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑦 ) ) ) |
| 41 |
40
|
a1i |
⊢ ( 𝐵 ∈ dom 𝐴 → ( ∀ 𝑥 ∈ dom 𝐴 ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) → ∀ 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑥 ) ∈ ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑦 ) ) ) ) |
| 42 |
12 21 41
|
3anim123d |
⊢ ( 𝐵 ∈ dom 𝐴 → ( ( 𝐴 : dom 𝐴 ⟶ On ∧ Ord dom 𝐴 ∧ ∀ 𝑥 ∈ dom 𝐴 ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) → ( ( 𝐴 ↾ 𝐵 ) : dom ( 𝐴 ↾ 𝐵 ) ⟶ On ∧ Ord dom ( 𝐴 ↾ 𝐵 ) ∧ ∀ 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑥 ) ∈ ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑦 ) ) ) ) ) |
| 43 |
|
df-smo |
⊢ ( Smo 𝐴 ↔ ( 𝐴 : dom 𝐴 ⟶ On ∧ Ord dom 𝐴 ∧ ∀ 𝑥 ∈ dom 𝐴 ∀ 𝑦 ∈ dom 𝐴 ( 𝑥 ∈ 𝑦 → ( 𝐴 ‘ 𝑥 ) ∈ ( 𝐴 ‘ 𝑦 ) ) ) ) |
| 44 |
|
df-smo |
⊢ ( Smo ( 𝐴 ↾ 𝐵 ) ↔ ( ( 𝐴 ↾ 𝐵 ) : dom ( 𝐴 ↾ 𝐵 ) ⟶ On ∧ Ord dom ( 𝐴 ↾ 𝐵 ) ∧ ∀ 𝑥 ∈ dom ( 𝐴 ↾ 𝐵 ) ∀ 𝑦 ∈ dom ( 𝐴 ↾ 𝐵 ) ( 𝑥 ∈ 𝑦 → ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑥 ) ∈ ( ( 𝐴 ↾ 𝐵 ) ‘ 𝑦 ) ) ) ) |
| 45 |
42 43 44
|
3imtr4g |
⊢ ( 𝐵 ∈ dom 𝐴 → ( Smo 𝐴 → Smo ( 𝐴 ↾ 𝐵 ) ) ) |
| 46 |
45
|
impcom |
⊢ ( ( Smo 𝐴 ∧ 𝐵 ∈ dom 𝐴 ) → Smo ( 𝐴 ↾ 𝐵 ) ) |