Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t2 : C ⟦ t0, t1 ⟧,
        ∏ g : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t g) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))) t2))


Going to execute:
simple refine (p _ _) ||
  simple refine (p _ _ _) ||
    simple refine (p _ _ _ _) ||
      simple refine (p _ _ _ _ _) ||
        simple refine (p _ _ _ _ _ _) ||
          simple refine (p _ _ _ _ _ _ _) ||
            simple refine (p _ _ _ _ _ _ _ _) ||
              simple refine (p _ _ _ _ _ _ _ _ _) ||
                simple refine (p _ _ _ _ _ _ _ _ _ _) ||
                  simple refine (p _ _ _ _ _ _ _ _ _ _ _) ||
                    simple refine (p _ _ _ _ _ _ _ _ _ _ _ _) ||
                      simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _) ||
                        simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _) ||
                          simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)
Level 0: In environment
P : hset_cartesian_closed_struct
C : category
E : struct_enrichment P C
E' := make_enrichment_over_struct P C E
 : enrichment C (sym_mon_closed_cat_of_hset_struct P)
HP : hset_equalizer_struct P
HC : is_univalent C
h : (∏ (y z : C) (f g : C ⟦ y, z ⟧), Coequalizer f g),,
    impred 1 (λ t : C, ∏ (z : C) (f g : C ⟦ t, z ⟧), Coequalizer f g)
      (λ t : C,
       impred 1 (λ t0 : C, ∏ f g : C ⟦ t, t0 ⟧, Coequalizer f g)
         (λ t0 : C,
          impred 1 (λ t1 : C ⟦ t, t0 ⟧, ∏ g : C ⟦ t, t0 ⟧, Coequalizer t1 g)
            (λ t1 : C ⟦ t, t0 ⟧,
             impred 1 (Coequalizer t1)
               (λ t2 : C ⟦ t, t0 ⟧, isaprop_Coequalizer HC t1 t2))))
t, t0, t1 : C
t2 : C ⟦ t0, t1 ⟧
The term "@impred ?n" has type
 "∏ (T : UU) (P0 : T → UU),
  (∏ t3 : T, isofhlevel ?n (P0 t3)) → isofhlevel ?n (∏ t : T, P0 t)"
while it is expected to have type
 "isofhlevel 1
    (∏ g : C ⟦ t0, t1 ⟧,
     mor_hset_struct P
       (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
          (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
       (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                hProp_to_hSet
                  (pr1 (precomp_arr E' t t2) x = pr1 (precomp_arr E' t g) x)%logic)%set,
        CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0)))"
(cannot unify "∏ g : C ⟦ t0, t1 ⟧,
               mor_hset_struct P
                 (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
                    (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
                 (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                          hProp_to_hSet
                            (pr1 (precomp_arr E' t t2) x =
                             pr1 (precomp_arr E' t g) x)%logic)%set,
                  CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))" and
"UU").
Level 0: In environment
P : hset_cartesian_closed_struct
C : category
E : struct_enrichment P C
E' := make_enrichment_over_struct P C E
 : enrichment C (sym_mon_closed_cat_of_hset_struct P)
HP : hset_equalizer_struct P
HC : is_univalent C
h : (∏ (y z : C) (f g : C ⟦ y, z ⟧), Coequalizer f g),,
    impred 1 (λ t : C, ∏ (z : C) (f g : C ⟦ t, z ⟧), Coequalizer f g)
      (λ t : C,
       impred 1 (λ t0 : C, ∏ f g : C ⟦ t, t0 ⟧, Coequalizer f g)
         (λ t0 : C,
          impred 1 (λ t1 : C ⟦ t, t0 ⟧, ∏ g : C ⟦ t, t0 ⟧, Coequalizer t1 g)
            (λ t1 : C ⟦ t, t0 ⟧,
             impred 1 (Coequalizer t1)
               (λ t2 : C ⟦ t, t0 ⟧, isaprop_Coequalizer HC t1 t2))))
t, t0, t1 : C
t2 : C ⟦ t0, t1 ⟧
The term "@impred ?n" has type
 "∏ (T : UU) (P0 : T → UU),
  (∏ t3 : T, isofhlevel ?n (P0 t3)) → isofhlevel ?n (∏ t : T, P0 t)"
while it is expected to have type
 "isofhlevel 1
    (∏ g : C ⟦ t0, t1 ⟧,
     mor_hset_struct P
       (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
          (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
       (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                hProp_to_hSet
                  (pr1 (precomp_arr E' t t2) x = pr1 (precomp_arr E' t g) x)%logic)%set,
        CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0)))"
(cannot unify "∏ g : C ⟦ t0, t1 ⟧,
               mor_hset_struct P
                 (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
                    (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
                 (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                          hProp_to_hSet
                            (pr1 (precomp_arr E' t t2) x =
                             pr1 (precomp_arr E' t g) x)%logic)%set,
                  CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))" and
"UU").

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t2 : C ⟦ t0, t1 ⟧,
        ∏ g : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t g) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))) t2))


Going to execute:
simple refine (p _ _)

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t2 : C ⟦ t0, t1 ⟧,
        ∏ g : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t g) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))) t2))


Going to execute:
<coq-core.plugins.ltac::simple_refine@0> $1

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t2 : C ⟦ t0, t1 ⟧,
        ∏ g : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t g) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))) t2))


Going to execute:
simple refine (p _ _ _) ||
  simple refine (p _ _ _ _) ||
    simple refine (p _ _ _ _ _) ||
      simple refine (p _ _ _ _ _ _) ||
        simple refine (p _ _ _ _ _ _ _) ||
          simple refine (p _ _ _ _ _ _ _ _) ||
            simple refine (p _ _ _ _ _ _ _ _ _) ||
              simple refine (p _ _ _ _ _ _ _ _ _ _) ||
                simple refine (p _ _ _ _ _ _ _ _ _ _ _) ||
                  simple refine (p _ _ _ _ _ _ _ _ _ _ _ _) ||
                    simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _) ||
                      simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _) || simple
                       refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)
Level 0: In environment
P : hset_cartesian_closed_struct
C : category
E : struct_enrichment P C
E' := make_enrichment_over_struct P C E
 : enrichment C (sym_mon_closed_cat_of_hset_struct P)
HP : hset_equalizer_struct P
HC : is_univalent C
h : (∏ (y z : C) (f g : C ⟦ y, z ⟧), Coequalizer f g),,
    impred 1 (λ t : C, ∏ (z : C) (f g : C ⟦ t, z ⟧), Coequalizer f g)
      (λ t : C,
       impred 1 (λ t0 : C, ∏ f g : C ⟦ t, t0 ⟧, Coequalizer f g)
         (λ t0 : C,
          impred 1 (λ t1 : C ⟦ t, t0 ⟧, ∏ g : C ⟦ t, t0 ⟧, Coequalizer t1 g)
            (λ t1 : C ⟦ t, t0 ⟧,
             impred 1 (Coequalizer t1)
               (λ t2 : C ⟦ t, t0 ⟧, isaprop_Coequalizer HC t1 t2))))
t, t0, t1 : C
t2 : C ⟦ t0, t1 ⟧
The term "impred ?n" has type
 "∏ P0 : C ⟦ t0, t1 ⟧ → UU,
  (∏ t3 : C ⟦ t0, t1 ⟧, isofhlevel ?n (P0 t3))
  → isofhlevel ?n (∏ t : C ⟦ t0, t1 ⟧, P0 t)"
while it is expected to have type
 "isofhlevel 1
    (∏ g : C ⟦ t0, t1 ⟧,
     mor_hset_struct P
       (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
          (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
       (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                hProp_to_hSet
                  (pr1 (precomp_arr E' t t2) x = pr1 (precomp_arr E' t g) x)%logic)%set,
        CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0)))"
(cannot unify "mor_hset_struct P
                 (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
                    (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
                 (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                          hProp_to_hSet
                            (pr1 (precomp_arr E' t t2) x =
                             pr1 (precomp_arr E' t g) x)%logic)%set,
                  CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))" and
"UU").
Level 0: In environment
P : hset_cartesian_closed_struct
C : category
E : struct_enrichment P C
E' := make_enrichment_over_struct P C E
 : enrichment C (sym_mon_closed_cat_of_hset_struct P)
HP : hset_equalizer_struct P
HC : is_univalent C
h : (∏ (y z : C) (f g : C ⟦ y, z ⟧), Coequalizer f g),,
    impred 1 (λ t : C, ∏ (z : C) (f g : C ⟦ t, z ⟧), Coequalizer f g)
      (λ t : C,
       impred 1 (λ t0 : C, ∏ f g : C ⟦ t, t0 ⟧, Coequalizer f g)
         (λ t0 : C,
          impred 1 (λ t1 : C ⟦ t, t0 ⟧, ∏ g : C ⟦ t, t0 ⟧, Coequalizer t1 g)
            (λ t1 : C ⟦ t, t0 ⟧,
             impred 1 (Coequalizer t1)
               (λ t2 : C ⟦ t, t0 ⟧, isaprop_Coequalizer HC t1 t2))))
t, t0, t1 : C
t2 : C ⟦ t0, t1 ⟧
The term "impred ?n" has type
 "∏ P0 : C ⟦ t0, t1 ⟧ → UU,
  (∏ t3 : C ⟦ t0, t1 ⟧, isofhlevel ?n (P0 t3))
  → isofhlevel ?n (∏ t : C ⟦ t0, t1 ⟧, P0 t)"
while it is expected to have type
 "isofhlevel 1
    (∏ g : C ⟦ t0, t1 ⟧,
     mor_hset_struct P
       (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
          (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
       (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                hProp_to_hSet
                  (pr1 (precomp_arr E' t t2) x = pr1 (precomp_arr E' t g) x)%logic)%set,
        CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0)))"
(cannot unify "mor_hset_struct P
                 (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
                    (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
                 (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                          hProp_to_hSet
                            (pr1 (precomp_arr E' t t2) x =
                             pr1 (precomp_arr E' t g) x)%logic)%set,
                  CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))" and
"UU").

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t2 : C ⟦ t0, t1 ⟧,
        ∏ g : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t g) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))) t2))


Going to execute:
simple refine (p _ _ _)

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t2 : C ⟦ t0, t1 ⟧,
        ∏ g : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t g) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))) t2))


Going to execute:
<coq-core.plugins.ltac::simple_refine@0> $1

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t2 : C ⟦ t0, t1 ⟧,
        ∏ g : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t g) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))) t2))


Going to execute:
simple refine (p _ _ _ _) ||
  simple refine (p _ _ _ _ _) ||
    simple refine (p _ _ _ _ _ _) ||
      simple refine (p _ _ _ _ _ _ _) ||
        simple refine (p _ _ _ _ _ _ _ _) ||
          simple refine (p _ _ _ _ _ _ _ _ _) ||
            simple refine (p _ _ _ _ _ _ _ _ _ _) ||
              simple refine (p _ _ _ _ _ _ _ _ _ _ _) ||
                simple refine (p _ _ _ _ _ _ _ _ _ _ _ _) ||
                  simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _) ||
                    simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _) || simple
                     refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)
Level 0: In environment
P : hset_cartesian_closed_struct
C : category
E : struct_enrichment P C
E' := make_enrichment_over_struct P C E
 : enrichment C (sym_mon_closed_cat_of_hset_struct P)
HP : hset_equalizer_struct P
HC : is_univalent C
h : (∏ (y z : C) (f g : C ⟦ y, z ⟧), Coequalizer f g),,
    impred 1 (λ t : C, ∏ (z : C) (f g : C ⟦ t, z ⟧), Coequalizer f g)
      (λ t : C,
       impred 1 (λ t0 : C, ∏ f g : C ⟦ t, t0 ⟧, Coequalizer f g)
         (λ t0 : C,
          impred 1 (λ t1 : C ⟦ t, t0 ⟧, ∏ g : C ⟦ t, t0 ⟧, Coequalizer t1 g)
            (λ t1 : C ⟦ t, t0 ⟧,
             impred 1 (Coequalizer t1)
               (λ t2 : C ⟦ t, t0 ⟧, isaprop_Coequalizer HC t1 t2))))
t, t0, t1 : C
t2 : C ⟦ t0, t1 ⟧
The term "impred ?n ?P" has type
 "(∏ t3 : C ⟦ t0, t1 ⟧, isofhlevel ?n (?P t3))
  → isofhlevel ?n (∏ t3 : C ⟦ t0, t1 ⟧, ?P t3)"
while it is expected to have type
 "isofhlevel 1
    (∏ g : C ⟦ t0, t1 ⟧,
     mor_hset_struct P
       (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
          (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
       (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                hProp_to_hSet
                  (pr1 (precomp_arr E' t t2) x = pr1 (precomp_arr E' t g) x)%logic)%set,
        CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0)))".
Level 0: In environment
P : hset_cartesian_closed_struct
C : category
E : struct_enrichment P C
E' := make_enrichment_over_struct P C E
 : enrichment C (sym_mon_closed_cat_of_hset_struct P)
HP : hset_equalizer_struct P
HC : is_univalent C
h : (∏ (y z : C) (f g : C ⟦ y, z ⟧), Coequalizer f g),,
    impred 1 (λ t : C, ∏ (z : C) (f g : C ⟦ t, z ⟧), Coequalizer f g)
      (λ t : C,
       impred 1 (λ t0 : C, ∏ f g : C ⟦ t, t0 ⟧, Coequalizer f g)
         (λ t0 : C,
          impred 1 (λ t1 : C ⟦ t, t0 ⟧, ∏ g : C ⟦ t, t0 ⟧, Coequalizer t1 g)
            (λ t1 : C ⟦ t, t0 ⟧,
             impred 1 (Coequalizer t1)
               (λ t2 : C ⟦ t, t0 ⟧, isaprop_Coequalizer HC t1 t2))))
t, t0, t1 : C
t2 : C ⟦ t0, t1 ⟧
The term "impred ?n ?P" has type
 "(∏ t3 : C ⟦ t0, t1 ⟧, isofhlevel ?n (?P t3))
  → isofhlevel ?n (∏ t3 : C ⟦ t0, t1 ⟧, ?P t3)"
while it is expected to have type
 "isofhlevel 1
    (∏ g : C ⟦ t0, t1 ⟧,
     mor_hset_struct P
       (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
          (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
       (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                hProp_to_hSet
                  (pr1 (precomp_arr E' t t2) x = pr1 (precomp_arr E' t g) x)%logic)%set,
        CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0)))".

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t2 : C ⟦ t0, t1 ⟧,
        ∏ g : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t g) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))) t2))


Going to execute:
simple refine (p _ _ _ _)

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t2 : C ⟦ t0, t1 ⟧,
        ∏ g : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t g))) (E (h t0 t1 t2 g) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t g) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 g) t (pr1 h0) (pr2 h0))) t2))


Going to execute:
<coq-core.plugins.ltac::simple_refine@0> $1

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  ============================
   (∏ t3 : C ⟦ t0, t1 ⟧,
    isofhlevel 1
      ((λ t4 : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t t4))) (E (h t0 t1 t2 t4) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t t4) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 t4) t (pr1 h0) (pr2 h0))) t3))


Going to execute:
intro

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  ============================
   (∏ t3 : C ⟦ t0, t1 ⟧,
    isofhlevel 1
      ((λ t4 : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t t4))) (E (h t0 t1 t2 t4) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t t4) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 t4) t (pr1 h0) (pr2 h0))) t3))


Going to execute:
<coq-core.plugins.ltac::intro@0>

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  t3 : ?X716@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t3 : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t t3))) (E (h t0 t1 t2 t3) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t t3) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 t3) t (pr1 h0) (pr2 h0))) t3))


Going to execute:
use impred; intro

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  t3 : ?X716@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t3 : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t t3))) (E (h t0 t1 t2 t3) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t t3) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 t3) t (pr1 h0) (pr2 h0))) t3))


Going to execute:
use impred

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  t3 : ?X716@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t3 : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t t3))) (E (h t0 t1 t2 t3) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t t3) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 t3) t (pr1 h0) (pr2 h0))) t3))


Going to execute:
simple_rapply p

TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  t3 : ?X716@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t3 : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t t3))) (E (h t0 t1 t2 t3) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t t3) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 t3) t (pr1 h0) (pr2 h0))) t3))


Going to execute:
fun p =>
  simple refine p ||
    simple refine (p _) ||
      simple refine (p _ _) ||
...                              simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _)
                               || simple refine
                               (p _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)

TcDebug (1) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  t3 : ?X716@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t3 : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t t3))) (E (h t0 t1 t2 t3) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t t3) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 t3) t (pr1 h0) (pr2 h0))) t3))


Going to execute:
simple refine p ||
  simple refine (p _) ||
    simple refine (p _ _) ||
      simple refine (p _ _ _) ||
        simple refine (p _ _ _ _) ||
          simple refine (p _ _ _ _ _) ||
            simple refine (p _ _ _ _ _ _) ||
              simple refine (p _ _ _ _ _ _ _) ||
                simple refine (p _ _ _ _ _ _ _ _) ||
                  simple refine (p _ _ _ _ _ _ _ _ _) ||
                    simple refine (p _ _ _ _ _ _ _ _ _ _) ||
                      simple refine (p _ _ _ _ _ _ _ _ _ _ _) ||
                        simple refine (p _ _ _ _ _ _ _ _ _ _ _ _) ||
                          simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _) ||
                            simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _) ||
                              simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)

TcDebug (1) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X652@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t2 : ?X684@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  t3 : ?X716@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0}
  ============================
   (isofhlevel 1
      ((λ t3 : C ⟦ t0, t1 ⟧,
        mor_hset_struct P
          (hset_struct_equalizer HP (pr2 (precomp_arr E' t t2))
             (pr2 (precomp_arr E' t t3))) (E (h t0 t1 t2 t3) t)
          (λ h0 : (∑ x : pr1 (E' ⦃ t1, t ⦄),
                   hProp_to_hSet
                     (pr1 (precomp_arr E' t t2) x =
                      pr1 (precomp_arr E' t t3) x)%logic)%set,
           CoequalizerOut (h t0 t1 t2 t3) t (pr1 h0) (pr2 h0))) t3))


Going to execute:
simple refine p
Level 1: evaluation returns
simple refine p ||
  simple refine (p _) ||
    simple refine (p _ _) ||
      simple refine (p _ _ _) ||
        simple refine (p _ _ _ _) ||
          simple refine (p _ _ _ _ _) ||
            simple refine (p _ _ _ _ _ _) ||
              simple refine (p _ _ _ _ _ _ _) ||
                simple refine (p _ _ _ _ _ _ _ _) ||
                  simple refine (p _ _ _ _ _ _ _ _ _) ||
                    simple refine (p _ _ _ _ _ _ _ _ _ _) ||
                      simple refine (p _ _ _ _ _ _ _ _ _ _ _) ||
                        simple refine (p _ _ _ _ _ _ _ _ _ _ _ _) ||
                          simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _) ||
                            simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _) ||
                              simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)
where
p := impred
of type
uconstr of type tacvalue


TcDebug (0) > 
Goal:
  
  P : hset_cartesian_closed_struct
  C : category
  E : struct_enrichment P C
  E' := make_enrichment_over_struct P C E
     : enrichment C (sym_mon_closed_cat_of_hset_struct P)
  HP : hset_equalizer_struct P
  HC : is_univalent C
  h : hProptoType
        (?X253@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X255@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X588@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X620@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
