-- Module: Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
EN : Type u_3
inst_6 : NormedAddCommGroup EN
inst_7 : NormedSpace 𝕜 EN
HN : Type u_4
inst_8 : TopologicalSpace HN
IN : ModelWithCorners 𝕜 EN HN
N : Type u
inst_9 : TopologicalSpace N
inst_10 : ChartedSpace HN N
EP : Type u_5
inst_11 : NormedAddCommGroup EP
inst_12 : NormedSpace 𝕜 EP
HP : Type u_6
inst_13 : TopologicalSpace HP
IP : ModelWithCorners 𝕜 EP HP
P : Type u
inst_14 : TopologicalSpace P
inst_15 : ChartedSpace HP P
U : Opens M
V : Opens (↑(↑(ChartedSpace.locallyRingedSpace IM ↥U).toPresheafedSpace : TopCat) : Type u)
x :
  (↑((Functor.obj
            (TopCat.Presheaf.pushforward CommRingCat
              (PresheafedSpace.Hom.base
                (InducedCategory.Hom.hom
                  (LocallyRingedSpace.Hom.toShHom
                    (ChartedSpace.locallyRingedSpaceMap (Subtype.val (p := fun (x : M) ↦ x ∈ U)) ⋯)))))
            (ChartedSpace.locallyRingedSpace IM ↥U).presheaf).obj
        (Opposite.op
          (Functor.obj
            (⋯.functor (f :=
              PresheafedSpace.Hom.base
                (InducedCategory.Hom.hom
                  (LocallyRingedSpace.Hom.toShHom
                    (ChartedSpace.locallyRingedSpaceMap (Subtype.val (p := fun (x : M) ↦ x ∈ U)) ⋯)))))
            V))) :
    Type u)
g :
  (x :
      ↥(Opposite.unop
            (Functor.obj
              (Functor.op
                (Opens.map
                  (PresheafedSpace.Hom.base
                    (InducedCategory.Hom.hom
                      (LocallyRingedSpace.Hom.toShHom
                        (ChartedSpace.locallyRingedSpaceMap (Subtype.val (p := fun (x : M) ↦ x ∈ U)) ⋯))))))
              (Opposite.op
                (Functor.obj
                  (⋯.functor (f :=
                    PresheafedSpace.Hom.base
                      (InducedCategory.Hom.hom
                        (LocallyRingedSpace.Hom.toShHom
                          (ChartedSpace.locallyRingedSpaceMap (Subtype.val (p := fun (x : M) ↦ x ∈ U)) ⋯)))))
                  V))) :
          Opens (↑(TopCat.of ↥U) : Type u))) →
    (fun (x : (↑(TopCat.of ↥U) : Type u)) ↦ 𝕜) (↑x : (↑(TopCat.of ↥U) : Type u))
hg :
  TopCat.PrelocalPredicate.pred (T := fun (x : (↑(TopCat.of ↥U) : Type u)) ↦ 𝕜)
    (TopCat.LocalPredicate.toPrelocalPredicate (T := fun (x : (↑(TopCat.of ↥U) : Type u)) ↦ 𝕜)
      (StructureGroupoid.LocalInvariantProp.localPredicate (P := ContDiffWithinAtProp IM 𝓘(𝕜, 𝕜) ∞) (↥U) 𝕜 ⋯))
    g
a : TopCat.of ↥U ⟶ TopCat.of M :=
  TopCat.ofHom { toFun := Subtype.val (p := fun (x : M) ↦ x ∈ U), continuous_toFun := ⋯ }
ha :
  IsOpenEmbedding (X := (↑(TopCat.of ↥U) : Type u)) (Y := (↑(TopCat.of M) : Type u))
    (⇑(TopCat.Hom.hom a) : (a : (↑(TopCat.of ↥U) : Type u)) → (↑(TopCat.of M) : Type u))
V' : Opens ↥U := (Opens.map a).obj (⋯.functor.obj V)
b : ↥V' ≃ₜ ↥(⋯.functor.obj V) := ⋯.homeomorphOfSubsetRange (s := Subtype.val (p := fun (x : M) ↦ x ∈ U) '' V.carrier) ⋯
refine_2 :
  ContMDiff IM (M :=
    ↥(Opposite.unop
        (Opposite.op
          (Functor.obj
            (⋯.functor (f :=
              PresheafedSpace.Hom.base
                (InducedCategory.Hom.hom
                  (LocallyRingedSpace.Hom.toShHom
                    (ChartedSpace.locallyRingedSpaceMap (Subtype.val (p := fun (x : M) ↦ x ∈ U)) ⋯)))))
            V))))
    IM (M' := ↥U) ∞
    (Function.comp (β := ↥V') (Subtype.val (p := fun (x : ↥U) ↦ x ∈ V')) (⇑b.symm : (a : ↥(⋯.functor.obj V)) → ↥V'))
⊢ ContMDiff IM (M :=
    ↥(Opposite.unop
        (Opposite.op
          (Functor.obj
            (⋯.functor (f :=
              PresheafedSpace.Hom.base
                (InducedCategory.Hom.hom
                  (LocallyRingedSpace.Hom.toShHom
                    (ChartedSpace.locallyRingedSpaceMap (Subtype.val (p := fun (x : M) ↦ x ∈ U)) ⋯)))))
            V))))
    IM (M' :=
    ↥(Opposite.unop
          (Functor.obj
            (Functor.op
              (Opens.map
                (PresheafedSpace.Hom.base
                  (InducedCategory.Hom.hom
                    (LocallyRingedSpace.Hom.toShHom
                      (ChartedSpace.locallyRingedSpaceMap (Subtype.val (p := fun (x : M) ↦ x ∈ U)) ⋯))))))
            (Opposite.op
              (Functor.obj
                (⋯.functor (f :=
                  PresheafedSpace.Hom.base
                    (InducedCategory.Hom.hom
                      (LocallyRingedSpace.Hom.toShHom
                        (ChartedSpace.locallyRingedSpaceMap (Subtype.val (p := fun (x : M) ↦ x ∈ U)) ⋯)))))
                V))) :
        Opens (↑(TopCat.of ↥U) : Type u)))
    ∞ (⇑b.symm : (a : ↥(⋯.functor.obj V)) → ↥V')

Tactic:
refine (ContMDiff.subtypeVal_comp_iff V' _).mp ?_

Premises used: ContMDiff.subtypeVal_comp_iff, Iff.mp