Once[
SetDirectory["C:\\drorbn\\AcademicPensieve\\Talks\\ICERM-2305"];
<< KnotTheory`;
<< LinAlg.m
]

SetAttributes[Bndry, Orderless];

CF[b_Bndry]:=RotateLeft[#,First@Ordering[#]-1]&/@b

CF[Bndry[{2,1,3,4},{6,5,7}]]

Kas[P[i_,j_]]:=Kas[CF@Bndry[{i,j}], 0, PQ[Subspace[{(Subscript[y, i]),(Subscript[y, j])}, {(Subscript[y, i]),(Subscript[y, j])}], 0]]

Kas[X[i_,j_,k_,l_]]:=If[PositiveQ@X[i,j,k,l],
Kas[CF@Bndry[{-i,j,k,-l}],0,PQ[Subspace[{(Subscript[y, -i]),(Subscript[y, j]),(Subscript[y, k]),(Subscript[y, -l])},{(Subscript[y, -i]),(Subscript[y, j]),(Subscript[y, k]),(Subscript[y, -l])}],
(1/2)((Subscript[η, -i]^2)+2 u (Subscript[η, -i]) (Subscript[η, j])+v (Subscript[η, j]^2)+2 (Subscript[η, -i]) (Subscript[η, k])+2 u (Subscript[η, j]) (Subscript[η, k])+(Subscript[η, k]^2)+2 u (Subscript[η, -i]) (Subscript[η, -l])+2 (Subscript[η, j]) (Subscript[η, -l])+2 u (Subscript[η, k]) (Subscript[η, -l])+v (Subscript[η, -l]^2))]],
Kas[CF@Bndry[{-i,-j,k,l}],0,PQ[Subspace[{(Subscript[y, -j]),(Subscript[y, k]),(Subscript[y, l]),(Subscript[y, -i])},{(Subscript[y, -j]),(Subscript[y, k]),(Subscript[y, l]),(Subscript[y, -i])}],
(1/2)(-v (Subscript[η, -i]^2)-2 u (Subscript[η, -i]) (Subscript[η, -j])-(Subscript[η, -j]^2)-2 (Subscript[η, -i]) (Subscript[η, k])-2 u (Subscript[η, -j]) (Subscript[η, k])-v (Subscript[η, k]^2)-2 u (Subscript[η, -i]) (Subscript[η, l])-2 (Subscript[η, -j]) (Subscript[η, l])-2 u (Subscript[η, k]) (Subscript[η, l])-(Subscript[η, l]^2))]]
]

The disjoint union in the world of multi-tangles.

Kas/:Kas[b1_,σ1_,pq1_]⋃Kas[b2_,σ2_,pq2_]:=Kas[CF@Join[b1,b2], σ1+σ2, pq1⊕pq2];

Kas[P[1,2]]⋃Kas[P[3,4]]

Kas[X[1,5,2,6]]⋃Kas[X[12,8,13,7]]

(* FM for FaceMerge *)
Kas[Bndry[{li___,i_,ri___},{lj___,j_,rj___},bs___],σ_,PQ[Subspace[vs_,gs_],Q_]]//(Subscript[FM, i_,j_]):=Module[{ϕ},
ϕ=Echo@LT[{(Subscript[y, 0])}⋃Complement[vs,{(Subscript[y, i]),(Subscript[y, j])}],vs,{(Subscript[y, 0])->(Subscript[y, i])+(Subscript[y, j])}⋃Table[v->v,{v,Complement[vs,{(Subscript[y, i]),(Subscript[y, j])}]}]];
Kas[CF@Bndry[{ri,li,i,rj,lj,j},bs],σ,PQ[Subspace[vs,gs],Q]//(SuperStar[ϕ])//Echo//(SubStar[ϕ])]
]

Kas[P[1,2]]⋃Kas[P[3,4]]//(Subscript[FM, 1,4])

(SubStar[LT[{(Subscript[y, 0]),(Subscript[y, 2]),(Subscript[y, 3])},{(Subscript[y, 1]),(Subscript[y, 2]),(Subscript[y, 3]),(Subscript[y, 4])},{(Subscript[y, 0])->(Subscript[y, 1])+(Subscript[y, 4]),(Subscript[y, 2])->(Subscript[y, 2]),(Subscript[y, 3])->(Subscript[y, 3])}]])[Subspace[{(Subscript[y, 0]),(Subscript[y, 2]),(Subscript[y, 3])},{(Subscript[y, 0]),(Subscript[y, 2]),(Subscript[y, 3])}]]

(SubStar[LT[{(Subscript[y, 0]),(Subscript[y, 2]),(Subscript[y, 3])},{(Subscript[y, 1]),(Subscript[y, 2]),(Subscript[y, 3]),(Subscript[y, 4])},{(Subscript[y, 0])->(Subscript[y, 1])+(Subscript[y, 4]),(Subscript[y, 2])->(Subscript[y, 2]),(Subscript[y, 3])->(Subscript[y, 3])}]])[PQ[Subspace[{(Subscript[y, 0]),(Subscript[y, 2]),(Subscript[y, 3])},{(Subscript[y, 0]),(Subscript[y, 2]),(Subscript[y, 3])}],0]]

Dreams: The following should automatically evaluate.

Kas[{X[1,2,5,4],X[5,3,7,6],X[4,6,9,8]}]

Kas/@{X[1,2,5,4],X[5,3,7,6],X[4,6,9,8]}

Union@@(Kas/@{X[1,2,5,4],X[5,3,7,6],X[4,6,9,8]})

Union@@(Kas/@{X[1,2,5,4],X[5,3,7,6],X[4,6,9,8]})//(Subscript[c, \[Placeholder]])