Users' Mathboxes Mathbox for Mario Carneiro < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  mrsubco Structured version   Visualization version   GIF version

Theorem mrsubco 36108
Description: The composition of two substitutions is a substitution. (Contributed by Mario Carneiro, 18-Jul-2016.)
Hypothesis
Ref Expression
mrsubco.s 𝑆 = (mRSubst‘𝑇)
Assertion
Ref Expression
mrsubco ((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) → (𝐹𝐺) ∈ ran 𝑆)

Proof of Theorem mrsubco
Dummy variables 𝑐 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 mrsubco.s . . . . 5 𝑆 = (mRSubst‘𝑇)
2 eqid 2762 . . . . 5 (mREx‘𝑇) = (mREx‘𝑇)
31, 2mrsubf 36104 . . . 4 (𝐹 ∈ ran 𝑆𝐹:(mREx‘𝑇)⟶(mREx‘𝑇))
43adantr 486 . . 3 ((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) → 𝐹:(mREx‘𝑇)⟶(mREx‘𝑇))
51, 2mrsubf 36104 . . . 4 (𝐺 ∈ ran 𝑆𝐺:(mREx‘𝑇)⟶(mREx‘𝑇))
65adantl 487 . . 3 ((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) → 𝐺:(mREx‘𝑇)⟶(mREx‘𝑇))
7 fco 6731 . . 3 ((𝐹:(mREx‘𝑇)⟶(mREx‘𝑇) ∧ 𝐺:(mREx‘𝑇)⟶(mREx‘𝑇)) → (𝐹𝐺):(mREx‘𝑇)⟶(mREx‘𝑇))
84, 6, 7syl2anc 596 . 2 ((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) → (𝐹𝐺):(mREx‘𝑇)⟶(mREx‘𝑇))
96adantr 486 . . . . 5 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ 𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → 𝐺:(mREx‘𝑇)⟶(mREx‘𝑇))
10 eldifi 4081 . . . . . . . . 9 (𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇)) → 𝑐 ∈ (mCN‘𝑇))
11 elun1 4131 . . . . . . . . 9 (𝑐 ∈ (mCN‘𝑇) → 𝑐 ∈ ((mCN‘𝑇) ∪ (mVR‘𝑇)))
1210, 11syl 18 . . . . . . . 8 (𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇)) → 𝑐 ∈ ((mCN‘𝑇) ∪ (mVR‘𝑇)))
1312adantl 487 . . . . . . 7 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ 𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → 𝑐 ∈ ((mCN‘𝑇) ∪ (mVR‘𝑇)))
1413s1cld 14674 . . . . . 6 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ 𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → ⟨“𝑐”⟩ ∈ Word ((mCN‘𝑇) ∪ (mVR‘𝑇)))
15 n0i 4289 . . . . . . . . . 10 (𝐹 ∈ ran 𝑆 → ¬ ran 𝑆 = ∅)
161rnfvprc 6876 . . . . . . . . . 10 𝑇 ∈ V → ran 𝑆 = ∅)
1715, 16nsyl2 142 . . . . . . . . 9 (𝐹 ∈ ran 𝑆𝑇 ∈ V)
1817adantr 486 . . . . . . . 8 ((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) → 𝑇 ∈ V)
1918adantr 486 . . . . . . 7 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ 𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → 𝑇 ∈ V)
20 eqid 2762 . . . . . . . 8 (mCN‘𝑇) = (mCN‘𝑇)
21 eqid 2762 . . . . . . . 8 (mVR‘𝑇) = (mVR‘𝑇)
2220, 21, 2mrexval 36088 . . . . . . 7 (𝑇 ∈ V → (mREx‘𝑇) = Word ((mCN‘𝑇) ∪ (mVR‘𝑇)))
2319, 22syl 18 . . . . . 6 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ 𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → (mREx‘𝑇) = Word ((mCN‘𝑇) ∪ (mVR‘𝑇)))
2414, 23eleqtrrd 2865 . . . . 5 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ 𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → ⟨“𝑐”⟩ ∈ (mREx‘𝑇))
25 fvco3 6982 . . . . 5 ((𝐺:(mREx‘𝑇)⟶(mREx‘𝑇) ∧ ⟨“𝑐”⟩ ∈ (mREx‘𝑇)) → ((𝐹𝐺)‘⟨“𝑐”⟩) = (𝐹‘(𝐺‘⟨“𝑐”⟩)))
269, 24, 25syl2anc 596 . . . 4 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ 𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → ((𝐹𝐺)‘⟨“𝑐”⟩) = (𝐹‘(𝐺‘⟨“𝑐”⟩)))
271, 2, 21, 20mrsubcn 36106 . . . . . 6 ((𝐺 ∈ ran 𝑆𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → (𝐺‘⟨“𝑐”⟩) = ⟨“𝑐”⟩)
2827adantll 727 . . . . 5 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ 𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → (𝐺‘⟨“𝑐”⟩) = ⟨“𝑐”⟩)
2928fveq2d 6886 . . . 4 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ 𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → (𝐹‘(𝐺‘⟨“𝑐”⟩)) = (𝐹‘⟨“𝑐”⟩))
301, 2, 21, 20mrsubcn 36106 . . . . 5 ((𝐹 ∈ ran 𝑆𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → (𝐹‘⟨“𝑐”⟩) = ⟨“𝑐”⟩)
3130adantlr 728 . . . 4 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ 𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → (𝐹‘⟨“𝑐”⟩) = ⟨“𝑐”⟩)
3226, 29, 313eqtrd 2801 . . 3 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ 𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))) → ((𝐹𝐺)‘⟨“𝑐”⟩) = ⟨“𝑐”⟩)
3332ralrimiva 3156 . 2 ((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) → ∀𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))((𝐹𝐺)‘⟨“𝑐”⟩) = ⟨“𝑐”⟩)
341, 2mrsubccat 36105 . . . . . . . 8 ((𝐺 ∈ ran 𝑆𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇)) → (𝐺‘(𝑥 ++ 𝑦)) = ((𝐺𝑥) ++ (𝐺𝑦)))
35343expb 1138 . . . . . . 7 ((𝐺 ∈ ran 𝑆 ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → (𝐺‘(𝑥 ++ 𝑦)) = ((𝐺𝑥) ++ (𝐺𝑦)))
3635adantll 727 . . . . . 6 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → (𝐺‘(𝑥 ++ 𝑦)) = ((𝐺𝑥) ++ (𝐺𝑦)))
3736fveq2d 6886 . . . . 5 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → (𝐹‘(𝐺‘(𝑥 ++ 𝑦))) = (𝐹‘((𝐺𝑥) ++ (𝐺𝑦))))
38 simpll 779 . . . . . 6 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → 𝐹 ∈ ran 𝑆)
396adantr 486 . . . . . . 7 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → 𝐺:(mREx‘𝑇)⟶(mREx‘𝑇))
40 simprl 783 . . . . . . 7 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → 𝑥 ∈ (mREx‘𝑇))
4139, 40ffvelcdmd 7082 . . . . . 6 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → (𝐺𝑥) ∈ (mREx‘𝑇))
42 simprr 785 . . . . . . 7 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → 𝑦 ∈ (mREx‘𝑇))
4339, 42ffvelcdmd 7082 . . . . . 6 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → (𝐺𝑦) ∈ (mREx‘𝑇))
441, 2mrsubccat 36105 . . . . . 6 ((𝐹 ∈ ran 𝑆 ∧ (𝐺𝑥) ∈ (mREx‘𝑇) ∧ (𝐺𝑦) ∈ (mREx‘𝑇)) → (𝐹‘((𝐺𝑥) ++ (𝐺𝑦))) = ((𝐹‘(𝐺𝑥)) ++ (𝐹‘(𝐺𝑦))))
4538, 41, 43, 44syl3anc 1398 . . . . 5 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → (𝐹‘((𝐺𝑥) ++ (𝐺𝑦))) = ((𝐹‘(𝐺𝑥)) ++ (𝐹‘(𝐺𝑦))))
4637, 45eqtrd 2797 . . . 4 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → (𝐹‘(𝐺‘(𝑥 ++ 𝑦))) = ((𝐹‘(𝐺𝑥)) ++ (𝐹‘(𝐺𝑦))))
4718, 22syl 18 . . . . . . . . 9 ((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) → (mREx‘𝑇) = Word ((mCN‘𝑇) ∪ (mVR‘𝑇)))
4847adantr 486 . . . . . . . 8 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → (mREx‘𝑇) = Word ((mCN‘𝑇) ∪ (mVR‘𝑇)))
4940, 48eleqtrd 2864 . . . . . . 7 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → 𝑥 ∈ Word ((mCN‘𝑇) ∪ (mVR‘𝑇)))
5042, 48eleqtrd 2864 . . . . . . 7 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → 𝑦 ∈ Word ((mCN‘𝑇) ∪ (mVR‘𝑇)))
51 ccatcl 14643 . . . . . . 7 ((𝑥 ∈ Word ((mCN‘𝑇) ∪ (mVR‘𝑇)) ∧ 𝑦 ∈ Word ((mCN‘𝑇) ∪ (mVR‘𝑇))) → (𝑥 ++ 𝑦) ∈ Word ((mCN‘𝑇) ∪ (mVR‘𝑇)))
5249, 50, 51syl2anc 596 . . . . . 6 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → (𝑥 ++ 𝑦) ∈ Word ((mCN‘𝑇) ∪ (mVR‘𝑇)))
5352, 48eleqtrrd 2865 . . . . 5 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → (𝑥 ++ 𝑦) ∈ (mREx‘𝑇))
54 fvco3 6982 . . . . 5 ((𝐺:(mREx‘𝑇)⟶(mREx‘𝑇) ∧ (𝑥 ++ 𝑦) ∈ (mREx‘𝑇)) → ((𝐹𝐺)‘(𝑥 ++ 𝑦)) = (𝐹‘(𝐺‘(𝑥 ++ 𝑦))))
5539, 53, 54syl2anc 596 . . . 4 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → ((𝐹𝐺)‘(𝑥 ++ 𝑦)) = (𝐹‘(𝐺‘(𝑥 ++ 𝑦))))
56 fvco3 6982 . . . . . 6 ((𝐺:(mREx‘𝑇)⟶(mREx‘𝑇) ∧ 𝑥 ∈ (mREx‘𝑇)) → ((𝐹𝐺)‘𝑥) = (𝐹‘(𝐺𝑥)))
5739, 40, 56syl2anc 596 . . . . 5 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → ((𝐹𝐺)‘𝑥) = (𝐹‘(𝐺𝑥)))
58 fvco3 6982 . . . . . 6 ((𝐺:(mREx‘𝑇)⟶(mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇)) → ((𝐹𝐺)‘𝑦) = (𝐹‘(𝐺𝑦)))
5939, 42, 58syl2anc 596 . . . . 5 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → ((𝐹𝐺)‘𝑦) = (𝐹‘(𝐺𝑦)))
6057, 59oveq12d 7435 . . . 4 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → (((𝐹𝐺)‘𝑥) ++ ((𝐹𝐺)‘𝑦)) = ((𝐹‘(𝐺𝑥)) ++ (𝐹‘(𝐺𝑦))))
6146, 55, 603eqtr4d 2807 . . 3 (((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) ∧ (𝑥 ∈ (mREx‘𝑇) ∧ 𝑦 ∈ (mREx‘𝑇))) → ((𝐹𝐺)‘(𝑥 ++ 𝑦)) = (((𝐹𝐺)‘𝑥) ++ ((𝐹𝐺)‘𝑦)))
6261ralrimivva 3207 . 2 ((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) → ∀𝑥 ∈ (mREx‘𝑇)∀𝑦 ∈ (mREx‘𝑇)((𝐹𝐺)‘(𝑥 ++ 𝑦)) = (((𝐹𝐺)‘𝑥) ++ ((𝐹𝐺)‘𝑦)))
631, 2, 21, 20elmrsubrn 36107 . . 3 (𝑇 ∈ V → ((𝐹𝐺) ∈ ran 𝑆 ↔ ((𝐹𝐺):(mREx‘𝑇)⟶(mREx‘𝑇) ∧ ∀𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))((𝐹𝐺)‘⟨“𝑐”⟩) = ⟨“𝑐”⟩ ∧ ∀𝑥 ∈ (mREx‘𝑇)∀𝑦 ∈ (mREx‘𝑇)((𝐹𝐺)‘(𝑥 ++ 𝑦)) = (((𝐹𝐺)‘𝑥) ++ ((𝐹𝐺)‘𝑦)))))
6418, 63syl 18 . 2 ((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) → ((𝐹𝐺) ∈ ran 𝑆 ↔ ((𝐹𝐺):(mREx‘𝑇)⟶(mREx‘𝑇) ∧ ∀𝑐 ∈ ((mCN‘𝑇) ∖ (mVR‘𝑇))((𝐹𝐺)‘⟨“𝑐”⟩) = ⟨“𝑐”⟩ ∧ ∀𝑥 ∈ (mREx‘𝑇)∀𝑦 ∈ (mREx‘𝑇)((𝐹𝐺)‘(𝑥 ++ 𝑦)) = (((𝐹𝐺)‘𝑥) ++ ((𝐹𝐺)‘𝑦)))))
658, 33, 62, 64mpbir3and 1361 1 ((𝐹 ∈ ran 𝑆𝐺 ∈ ran 𝑆) → (𝐹𝐺) ∈ ran 𝑆)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401  w3a 1103   = wceq 1570  wcel 2145  wral 3078  Vcvv 3453  cdif 3899  cun 3900  c0 4282  ran crn 5660  ccom 5663  wf 6533  cfv 6537  (class class class)co 7417  Word cword 14582   ++ cconcat 14639  ⟨“cs1 14666  mCNcmcn 36047  mVRcmvar 36048  mRExcmrex 36053  mRSubstcmrsub 36057
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2734  ax-rep 5236  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7740  ax-cnex 11184  ax-resscn 11185  ax-1cn 11186  ax-icn 11187  ax-addcl 11188  ax-addrcl 11189  ax-mulcl 11190  ax-mulrcl 11191  ax-mulcom 11192  ax-addass 11193  ax-mulass 11194  ax-distr 11195  ax-i2m1 11196  ax-1ne0 11197  ax-1rid 11198  ax-rnegex 11199  ax-rrecex 11200  ax-cnre 11201  ax-pre-lttri 11202  ax-pre-lttrn 11203  ax-pre-ltadd 11204  ax-pre-mulgt0 11205
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3064  df-ral 3079  df-rex 3089  df-rmo 3367  df-reu 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4283  df-if 4486  df-pw 4562  df-sn 4588  df-pr 4590  df-op 4594  df-uni 4871  df-int 4911  df-iun 4956  df-br 5108  df-opab 5172  df-mpt 5191  df-tr 5217  df-id 5554  df-eprel 5559  df-po 5567  df-so 5568  df-fr 5612  df-we 5614  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-riota 7374  df-ov 7420  df-oprab 7421  df-mpo 7422  df-om 7867  df-1st 7990  df-2nd 7991  df-frecs 8284  df-wrecs 8315  df-recs 8364  df-rdg 8403  df-1o 8459  df-er 8700  df-map 8832  df-pm 8833  df-en 8957  df-dom 8958  df-sdom 8959  df-fin 8960  df-card 9948  df-pnf 11273  df-mnf 11274  df-xr 11275  df-ltxr 11276  df-le 11277  df-sub 11471  df-neg 11472  df-nn 12262  df-2 12331  df-n0 12533  df-xnn0 12606  df-z 12620  df-uz 12892  df-fz 13566  df-fzo 13714  df-seq 14070  df-hash 14399  df-word 14583  df-lsw 14632  df-concat 14640  df-s1 14667  df-substr 14713  df-pfx 14745  df-struct 17245  df-sets 17262  df-slot 17280  df-ndx 17292  df-base 17308  df-ress 17329  df-plusg 17361  df-0g 17532  df-gsum 17533  df-mgm 18736  df-sgrp 18827  df-mnd 18843  df-mhm 18897  df-submnd 18898  df-frmd 18964  df-vrmd 18965  df-mrex 36073  df-mrsub 36077
This theorem is used by:  msubco  36118
  Copyright terms: Public domain W3C validator