           CoproductArrow J C (h t0) (λ i : J, h0 i))) t0))


Going to execute:
simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _) || simple refine
 (p _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"

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)
  J : UU
  HP : hset_struct_type_prod P J
  HC : is_univalent C
  h : hProptoType
        (?X240@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X242@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X479@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
             ?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X511@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  ============================
   (isofhlevel 1
      ((λ t0 : J → C,
        mor_hset_struct P
          (HP (λ j : J, pr1 (E' ⦃ t0 j, t ⦄)) (λ j : J, pr2 (E' ⦃ t0 j, t ⦄)))
          (E (h t0) t)
          (λ h0 : (∏ j : J, pr1 (E' ⦃ t0 j, t ⦄))%set,
           CoproductArrow J C (h t0) (λ i : J, h0 i))) t0))


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)
  J : UU
  HP : hset_struct_type_prod P J
  HC : is_univalent C
  h : hProptoType
        (?X240@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X242@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X479@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
             ?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X511@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  ============================
   (isofhlevel 1
      ((λ t0 : J → C,
        mor_hset_struct P
          (HP (λ j : J, pr1 (E' ⦃ t0 j, t ⦄)) (λ j : J, pr2 (E' ⦃ t0 j, t ⦄)))
          (E (h t0) t)
          (λ h0 : (∏ j : J, pr1 (E' ⦃ t0 j, t ⦄))%set,
           CoproductArrow J C (h t0) (λ i : J, h0 i))) t0))


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)
  J : UU
  HP : hset_struct_type_prod P J
  HC : is_univalent C
  h : hProptoType
        (?X240@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X242@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X479@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
             ?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X511@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  ============================
   (isofhlevel 1
      ((λ t0 : J → C,
        mor_hset_struct P
          (HP (λ j : J, pr1 (E' ⦃ t0 j, t ⦄)) (λ j : J, pr2 (E' ⦃ t0 j, t ⦄)))
          (E (h t0) t)
          (λ h0 : (∏ j : J, pr1 (E' ⦃ t0 j, t ⦄))%set,
           CoproductArrow J C (h t0) (λ i : J, h0 i))) t0))


Going to execute:
simple refine (p _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"

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)
  J : UU
  HP : hset_struct_type_prod P J
  HC : is_univalent C
  h : hProptoType
        (?X240@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X242@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X479@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
             ?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X511@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  ============================
   (isofhlevel 1
      ((λ t0 : J → C,
        mor_hset_struct P
          (HP (λ j : J, pr1 (E' ⦃ t0 j, t ⦄)) (λ j : J, pr2 (E' ⦃ t0 j, t ⦄)))
          (E (h t0) t)
          (λ h0 : (∏ j : J, pr1 (E' ⦃ t0 j, t ⦄))%set,
           CoproductArrow J C (h t0) (λ i : J, h0 i))) t0))


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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


Going to execute:
simple_rapply p
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 1: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 1: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Level 0: Illegal application (Non-functional construction): 
The expression "impred ?n ?P ?i" of type "isofhlevel ?n (∏ t1 : ?T, ?P t1)"
cannot be applied to the term
 "?y" : "?T0"
Evaluated term: isaprop_hset_struct_on_mor
Evaluated term: CoproductInCommutes

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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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 := CoproductArrow_eq _ _ _ (pr1 EC ys)
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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)
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)
J : UU
HP : hset_struct_type_prod P J
EC : structure_enrichment_coprod
x : C
ys : J → C
f, g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
p : ∏ j : J,
    structure_enrichment_obj_coprod_in ys j · f =
    structure_enrichment_obj_coprod_in ys j · g
The term "CoproductArrow_eq J C ?z (pr1 EC ys)" has type
 "∏ f0 g0 : C ⟦ pr1 EC ys, ?z ⟧,
  (∏ i : J,
   CoproductIn J C (pr1 EC ys) i · f0 = CoproductIn J C (pr1 EC ys) i · g0)
  → f0 = g0" while it is expected to have type "f = g".
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)
J : UU
HP : hset_struct_type_prod P J
EC : structure_enrichment_coprod
x : C
ys : J → C
f, g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
p : ∏ j : J,
    structure_enrichment_obj_coprod_in ys j · f =
    structure_enrichment_obj_coprod_in ys j · g
The term "CoproductArrow_eq J C ?z (pr1 EC ys)" has type
 "∏ f0 g0 : C ⟦ pr1 EC ys, ?z ⟧,
  (∏ i : J,
   CoproductIn J C (pr1 EC ys) i · f0 = CoproductIn J C (pr1 EC ys) i · g0)
  → f0 = g0" while it is expected to have type "f = g".

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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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)
J : UU
HP : hset_struct_type_prod P J
EC : structure_enrichment_coprod
x : C
ys : J → C
f, g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
p : ∏ j : J,
    structure_enrichment_obj_coprod_in ys j · f =
    structure_enrichment_obj_coprod_in ys j · g
The term "CoproductArrow_eq J C ?z (pr1 EC ys) ?f" has type
 "∏ g0 : C ⟦ pr1 EC ys, ?z ⟧,
  (∏ i : J,
   CoproductIn J C (pr1 EC ys) i · ?f = CoproductIn J C (pr1 EC ys) i · g0)
  → ?f = g0" while it is expected to have type "f = g".
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)
J : UU
HP : hset_struct_type_prod P J
EC : structure_enrichment_coprod
x : C
ys : J → C
f, g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
p : ∏ j : J,
    structure_enrichment_obj_coprod_in ys j · f =
    structure_enrichment_obj_coprod_in ys j · g
The term "CoproductArrow_eq J C ?z (pr1 EC ys) ?f" has type
 "∏ g0 : C ⟦ pr1 EC ys, ?z ⟧,
  (∏ i : J,
   CoproductIn J C (pr1 EC ys) i · ?f = CoproductIn J C (pr1 EC ys) i · g0)
  → ?f = g0" while it is expected to have type "f = g".

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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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)
J : UU
HP : hset_struct_type_prod P J
EC : structure_enrichment_coprod
x : C
ys : J → C
f, g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
p : ∏ j : J,
    structure_enrichment_obj_coprod_in ys j · f =
    structure_enrichment_obj_coprod_in ys j · g
The term "CoproductArrow_eq J C ?z (pr1 EC ys) ?f ?g" has type
 "(∏ i : J,
   CoproductIn J C (pr1 EC ys) i · ?f = CoproductIn J C (pr1 EC ys) i · ?g)
  → ?f = ?g" while it is expected to have type "f = g".
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)
J : UU
HP : hset_struct_type_prod P J
EC : structure_enrichment_coprod
x : C
ys : J → C
f, g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
p : ∏ j : J,
    structure_enrichment_obj_coprod_in ys j · f =
    structure_enrichment_obj_coprod_in ys j · g
The term "CoproductArrow_eq J C ?z (pr1 EC ys) ?f ?g" has type
 "(∏ i : J,
   CoproductIn J C (pr1 EC ys) i · ?f = CoproductIn J C (pr1 EC ys) i · ?g)
  → ?f = ?g" while it is expected to have type "f = g".

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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (f = g)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EC : structure_enrichment_coprod
  x : ob C
  ys : J → C
  f : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  g : C ⟦ structure_enrichment_obj_coprod ys, x ⟧
  p : ∏ j : J,
      structure_enrichment_obj_coprod_in ys j · f =
      structure_enrichment_obj_coprod_in ys j · g
  ============================
   (∏ i : J,
    CoproductIn J C (pr1 EC ys) i · f = CoproductIn J C (pr1 EC ys) i · g)


Going to execute:
<coq-core.plugins.ltac::exact@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)
  J : UU
  HP : hset_struct_type_prod P J
  EBC : structure_enrichment_coprod
  ys : J → C
  ============================
   (enriched_coprod_cocone E' ys)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EBC : structure_enrichment_coprod
  ys : J → C
  ============================
   (enriched_coprod_cocone E' ys)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EBC : structure_enrichment_coprod
  ys : J → C
  ============================
   (enriched_coprod_cocone E' ys)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EBC : structure_enrichment_coprod
  ys : J → C
  ============================
   (enriched_coprod_cocone E' ys)


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 := make_enriched_coprod_cocone
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)
  J : UU
  HP : hset_struct_type_prod P J
  EBC : structure_enrichment_coprod
  ys : J → C
  ============================
   (enriched_coprod_cocone E' ys)


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)
  J : UU
  HP : hset_struct_type_prod P J
  EBC : structure_enrichment_coprod
  ys : J → C
  ============================
   (enriched_coprod_cocone E' ys)


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 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)
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)
J : UU
HP : hset_struct_type_prod P J
EBC : structure_enrichment_coprod
ys : J → C
The term "make_enriched_coprod_cocone" has type
 "∏ (E0 : enrichment ?C ?V) (J0 : UU) (D : J0 → ?C) 
  (a : ?C),
  (∏ j : J0, ?V ⟦ I_{ ?V}, E0 ⦃ D j, a ⦄ ⟧) → enriched_coprod_cocone E0 D"
while it is expected to have type "enriched_coprod_cocone E' ys".
Level 0: In environment
P : hset_cartesian_closed_struct
