              ?M0}
  t4 : ?X477@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  t5 : ?X509@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0}
  t6 : ?X541@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t7 : ?X573@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  ============================
   (isofhlevel 1
      ((λ _ : E t0 t1 t5 t6,
        E (h t t0) t1 (BinCoproductArrow (h t t0) t2 t5)
          (BinCoproductArrow (h t t0) t3 t6)) t7))


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  HC : is_univalent C
  h : hProptoType
        (?X221@{__:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X223@{__:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X317@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X349@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X381@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t2 : ?X413@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t3 : ?X445@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t4 : ?X477@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  t5 : ?X509@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0}
  t6 : ?X541@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t7 : ?X573@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  ============================
   (isofhlevel 1
      ((λ _ : E t0 t1 t5 t6,
        E (h t t0) t1 (BinCoproductArrow (h t t0) t2 t5)
          (BinCoproductArrow (h t t0) t3 t6)) t7))


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  HC : is_univalent C
  h : hProptoType
        (?X221@{__:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X223@{__:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X317@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X349@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X381@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t2 : ?X413@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t3 : ?X445@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t4 : ?X477@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  t5 : ?X509@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0}
  t6 : ?X541@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t7 : ?X573@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  ============================
   (isofhlevel 1
      ((λ _ : E t0 t1 t5 t6,
        E (h t t0) t1 (BinCoproductArrow (h t t0) t2 t5)
          (BinCoproductArrow (h t t0) t3 t6)) t7))


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  HC : is_univalent C
  h : hProptoType
        (?X221@{__:=?M0; __:=?M0; __:=?M0; __:=?M0},,
         ?X223@{__:=?M0; __:=?M0; __:=?M0; __:=?M0})
  t : ?X317@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t0 : ?X349@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t1 : ?X381@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=?M0}
  t2 : ?X413@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t3 : ?X445@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  t4 : ?X477@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0}
  t5 : ?X509@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0}
  t6 : ?X541@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0}
  t7 : ?X573@{__:=?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0; __:=?M0; __:=?M0; __:=?M0; __:=
              ?M0}
  ============================
   (isofhlevel 1
      ((λ _ : E t0 t1 t5 t6,
        E (h t t0) t1 (BinCoproductArrow (h t t0) t2 t5)
          (BinCoproductArrow (h t t0) t3 t6)) t7))


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · 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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
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 (∏ t8 : ?T, ?P t8)"
cannot be applied to the term
 "?y" : "?T0"
Evaluated term: propproperty
Evaluated term: BinCoproductIn1Commutes
Evaluated term: BinCoproductIn2Commutes

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · 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:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · 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:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · 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 := BinCoproductArrowsEq _ _ _ (pr1 EBC x y)
of type
uconstr of type tacvalue


TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (f = g)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · 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
C : category
E : poset_enrichment C
E' := make_enrichment_over_poset C E : enrichment C poset_sym_mon_closed_cat
EBC : poset_enrichment_binary_coprod
w, x, y : C
f, g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
The term "BinCoproductArrowsEq C x y (pr1 EBC x y)" has type
 "∏ (x0 : C) (k1 k2 : C ⟦ pr1 EBC x y, x0 ⟧),
  BinCoproductIn1 (pr1 EBC x y) · k1 = BinCoproductIn1 (pr1 EBC x y) · k2
  → BinCoproductIn2 (pr1 EBC x y) · k1 = BinCoproductIn2 (pr1 EBC x y) · k2
    → k1 = k2" while it is expected to have type "f = g".
Level 0: In environment
C : category
E : poset_enrichment C
E' := make_enrichment_over_poset C E : enrichment C poset_sym_mon_closed_cat
EBC : poset_enrichment_binary_coprod
w, x, y : C
f, g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
The term "BinCoproductArrowsEq C x y (pr1 EBC x y)" has type
 "∏ (x0 : C) (k1 k2 : C ⟦ pr1 EBC x y, x0 ⟧),
  BinCoproductIn1 (pr1 EBC x y) · k1 = BinCoproductIn1 (pr1 EBC x y) · k2
  → BinCoproductIn2 (pr1 EBC x y) · k1 = BinCoproductIn2 (pr1 EBC x y) · k2
    → k1 = k2" while it is expected to have type "f = g".

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (f = g)


Going to execute:
simple refine (p _)

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (f = g)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · 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
C : category
E : poset_enrichment C
E' := make_enrichment_over_poset C E : enrichment C poset_sym_mon_closed_cat
EBC : poset_enrichment_binary_coprod
w, x, y : C
f, g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
The term "BinCoproductArrowsEq C x y (pr1 EBC x y) ?x" has type
 "∏ k1 k2 : C ⟦ pr1 EBC x y, ?x ⟧,
  BinCoproductIn1 (pr1 EBC x y) · k1 = BinCoproductIn1 (pr1 EBC x y) · k2
  → BinCoproductIn2 (pr1 EBC x y) · k1 = BinCoproductIn2 (pr1 EBC x y) · k2
    → k1 = k2" while it is expected to have type "f = g".
Level 0: In environment
C : category
E : poset_enrichment C
E' := make_enrichment_over_poset C E : enrichment C poset_sym_mon_closed_cat
EBC : poset_enrichment_binary_coprod
w, x, y : C
f, g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
The term "BinCoproductArrowsEq C x y (pr1 EBC x y) ?x" has type
 "∏ k1 k2 : C ⟦ pr1 EBC x y, ?x ⟧,
  BinCoproductIn1 (pr1 EBC x y) · k1 = BinCoproductIn1 (pr1 EBC x y) · k2
  → BinCoproductIn2 (pr1 EBC x y) · k1 = BinCoproductIn2 (pr1 EBC x y) · k2
    → k1 = k2" while it is expected to have type "f = g".

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (f = g)


Going to execute:
simple refine (p _ _)

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (f = g)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · 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
C : category
E : poset_enrichment C
E' := make_enrichment_over_poset C E : enrichment C poset_sym_mon_closed_cat
EBC : poset_enrichment_binary_coprod
w, x, y : C
f, g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
The term "BinCoproductArrowsEq C x y (pr1 EBC x y) ?x ?k1" has type
 "∏ k2 : C ⟦ pr1 EBC x y, ?x ⟧,
  BinCoproductIn1 (pr1 EBC x y) · ?k1 = BinCoproductIn1 (pr1 EBC x y) · k2
  → BinCoproductIn2 (pr1 EBC x y) · ?k1 = BinCoproductIn2 (pr1 EBC x y) · k2
    → ?k1 = k2" while it is expected to have type 
"f = g".
Level 0: In environment
C : category
E : poset_enrichment C
E' := make_enrichment_over_poset C E : enrichment C poset_sym_mon_closed_cat
EBC : poset_enrichment_binary_coprod
w, x, y : C
f, g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
The term "BinCoproductArrowsEq C x y (pr1 EBC x y) ?x ?k1" has type
 "∏ k2 : C ⟦ pr1 EBC x y, ?x ⟧,
  BinCoproductIn1 (pr1 EBC x y) · ?k1 = BinCoproductIn1 (pr1 EBC x y) · k2
  → BinCoproductIn2 (pr1 EBC x y) · ?k1 = BinCoproductIn2 (pr1 EBC x y) · k2
    → ?k1 = k2" while it is expected to have type 
"f = g".

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (f = g)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (f = g)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · 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 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)
Level 0: In environment
C : category
E : poset_enrichment C
E' := make_enrichment_over_poset C E : enrichment C poset_sym_mon_closed_cat
EBC : poset_enrichment_binary_coprod
w, x, y : C
f, g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
The term "BinCoproductArrowsEq C x y (pr1 EBC x y) ?x ?k1 ?k2" has type
 "BinCoproductIn1 (pr1 EBC x y) · ?k1 = BinCoproductIn1 (pr1 EBC x y) · ?k2
  → BinCoproductIn2 (pr1 EBC x y) · ?k1 = BinCoproductIn2 (pr1 EBC x y) · ?k2
    → ?k1 = ?k2" while it is expected to have type 
"f = g".
Level 0: In environment
C : category
E : poset_enrichment C
E' := make_enrichment_over_poset C E : enrichment C poset_sym_mon_closed_cat
EBC : poset_enrichment_binary_coprod
w, x, y : C
f, g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
The term "BinCoproductArrowsEq C x y (pr1 EBC x y) ?x ?k1 ?k2" has type
 "BinCoproductIn1 (pr1 EBC x y) · ?k1 = BinCoproductIn1 (pr1 EBC x y) · ?k2
  → BinCoproductIn2 (pr1 EBC x y) · ?k1 = BinCoproductIn2 (pr1 EBC x y) · ?k2
    → ?k1 = ?k2" while it is expected to have type 
"f = g".

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (f = g)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (f = g)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · 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 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _)
Level 0: In environment
C : category
E : poset_enrichment C
E' := make_enrichment_over_poset C E : enrichment C poset_sym_mon_closed_cat
EBC : poset_enrichment_binary_coprod
w, x, y : C
f, g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
The term "BinCoproductArrowsEq C x y (pr1 EBC x y) ?x ?k1 ?k2 ?p" has type
 "BinCoproductIn2 (pr1 EBC x y) · ?k1 = BinCoproductIn2 (pr1 EBC x y) · ?k2
  → ?k1 = ?k2" while it is expected to have type "f = g".
Level 0: In environment
C : category
E : poset_enrichment C
E' := make_enrichment_over_poset C E : enrichment C poset_sym_mon_closed_cat
EBC : poset_enrichment_binary_coprod
w, x, y : C
f, g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
The term "BinCoproductArrowsEq C x y (pr1 EBC x y) ?x ?k1 ?k2 ?p" has type
 "BinCoproductIn2 (pr1 EBC x y) · ?k1 = BinCoproductIn2 (pr1 EBC x y) · ?k2
  → ?k1 = ?k2" while it is expected to have type "f = g".

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (f = g)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (f = g)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (BinCoproductIn1 (pr1 EBC x y) · f = BinCoproductIn1 (pr1 EBC x y) · g)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  w : ob C
  x : ob C
  y : ob C
  f : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  g : C ⟦ poset_enrichment_obj_binary_coprod x y, w ⟧
  p : poset_enrichment_obj_in1 x y · f = poset_enrichment_obj_in1 x y · g
  q : poset_enrichment_obj_in2 x y · f = poset_enrichment_obj_in2 x y · g
  ============================
   (BinCoproductIn2 (pr1 EBC x y) · f = BinCoproductIn2 (pr1 EBC x y) · g)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  x : ob C
  y : ob C
  z : ob C
  ============================
   (poset_sym_mon_closed_cat ⟦ (E' ⦃ x, z ⦄) ⊗ (E' ⦃ y, z ⦄),
    E' ⦃ poset_enrichment_obj_binary_coprod x y, z ⦄ ⟧)


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

TcDebug (0) > 
Goal:
  
  C : category
  E : poset_enrichment C
  E' := make_enrichment_over_poset C E
     : enrichment C poset_sym_mon_closed_cat
  EBC : poset_enrichment_binary_coprod
  x : ob C
  y : ob C
  z : ob C
