hcomp_def: fixes V\<^sub>B :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and H\<^sub>B :: "'b \<Rightarrow> 'b \<Rightarrow> 'b"   and \<a>\<^sub>B :: "'b \<Rightarrow> 'b \<Rightarrow> 'b \<Rightarrow> 'b"   and \<i>\<^sub>B :: "'b \<Rightarrow> 'b"   and src\<^sub>B :: "'b \<Rightarrow> 'b"   and trg\<^sub>B :: "'b \<Rightarrow> 'b"   and \<mu> :: "('b bicategorical_language.term, 'b) concrete_category.arr"   and \<nu> :: "('b bicategorical_language.term, 'b) concrete_category.arr" assumes "strictified_bicategory V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B" shows "strictified_bicategory.hcomp V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B \<mu> \<nu> \<equiv> if partial_magma.arr (concrete_category.COMP {A. bicategorical_language.Nml V\<^sub>B src\<^sub>B trg\<^sub>B A \<and> bicategorical_language.Ide V\<^sub>B src\<^sub>B trg\<^sub>B A} (\<lambda>A B. {\<mu>. bicategorical_language.Src src\<^sub>B A = bicategorical_language.Src src\<^sub>B B \<and> bicategorical_language.Trg trg\<^sub>B A = bicategorical_language.Trg trg\<^sub>B B \<and> partial_magma.in_hom V\<^sub>B \<mu> (Coherence.evaluation_map.eval V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B (\<lambda>\<mu>. if partial_magma.arr V\<^sub>B \<mu> then \<mu> else partial_magma.null V\<^sub>B) A) (Coherence.evaluation_map.eval V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B (\<lambda>\<mu>. if partial_magma.arr V\<^sub>B \<mu> then \<mu> else partial_magma.null V\<^sub>B) B)}) (\<lambda>_ _ _. V\<^sub>B)) \<mu> \<and> partial_magma.arr (concrete_category.COMP {A. bicategorical_language.Nml V\<^sub>B src\<^sub>B trg\<^sub>B A \<and> bicategorical_language.Ide V\<^sub>B src\<^sub>B trg\<^sub>B A} (\<lambda>A B. {\<mu>. bicategorical_language.Src src\<^sub>B A = bicategorical_language.Src src\<^sub>B B \<and> bicategorical_language.Trg trg\<^sub>B A = bicategorical_language.Trg trg\<^sub>B B \<and> partial_magma.in_hom V\<^sub>B \<mu> (Coherence.evaluation_map.eval V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B (\<lambda>\<mu>. if partial_magma.arr V\<^sub>B \<mu> then \<mu> else partial_magma.null V\<^sub>B) A) (Coherence.evaluation_map.eval V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B (\<lambda>\<mu>. if partial_magma.arr V\<^sub>B \<mu> then \<mu> else partial_magma.null V\<^sub>B) B)}) (\<lambda>_ _ _. V\<^sub>B)) \<nu> \<and> strictified_bicategory.src V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B \<mu> = strictified_bicategory.trg V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B \<nu> then concrete_category.MkArr (bicategorical_language.HcompNml (concrete_category.Dom \<mu>) (concrete_category.Dom \<nu>)) (bicategorical_language.HcompNml (concrete_category.Cod \<mu>) (concrete_category.Cod \<nu>)) (V\<^sub>B (bicategory.can V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B (bicategorical_language.HcompNml (concrete_category.Cod \<mu>) (concrete_category.Cod \<nu>)) (bicategorical_language.Hcomp (concrete_category.Cod \<mu>) (concrete_category.Cod \<nu>))) (V\<^sub>B (H\<^sub>B (concrete_category.Map \<mu>) (concrete_category.Map \<nu>)) (bicategory.can V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B (bicategorical_language.Hcomp (concrete_category.Dom \<mu>) (concrete_category.Dom \<nu>)) (bicategorical_language.HcompNml (concrete_category.Dom \<mu>) (concrete_category.Dom \<nu>))))) else partial_magma.null (concrete_category.COMP {A. bicategorical_language.Nml V\<^sub>B src\<^sub>B trg\<^sub>B A \<and> bicategorical_language.Ide V\<^sub>B src\<^sub>B trg\<^sub>B A} (\<lambda>A B. {\<mu>. bicategorical_language.Src src\<^sub>B A = bicategorical_language.Src src\<^sub>B B \<and> bicategorical_language.Trg trg\<^sub>B A = bicategorical_language.Trg trg\<^sub>B B \<and> partial_magma.in_hom V\<^sub>B \<mu> (Coherence.evaluation_map.eval V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B (\<lambda>\<mu>. if partial_magma.arr V\<^sub>B \<mu> then \<mu> else partial_magma.null V\<^sub>B) A) (Coherence.evaluation_map.eval V\<^sub>B H\<^sub>B \<a>\<^sub>B \<i>\<^sub>B src\<^sub>B trg\<^sub>B (\<lambda>\<mu>. if partial_magma.arr V\<^sub>B \<mu> then \<mu> else partial_magma.null V\<^sub>B) B)}) (\<lambda>_ _ _. V\<^sub>B))"