Pensieve header: Implementing and testing the category of Gaussian Differential Operators.

Our morphisms are objects like 𝔼[Q,P] where Q is a benign quadratic and P is a docile series. No effort is made to encapsulate the domains and ranges.

Goal. Implement and verify (Subscript[Compose, {ts},{as},{xs}])[ℰ1_𝔼, ℰ2_𝔼].

{(SuperStar[t]),(SuperStar[y]),(SuperStar[a]),(SuperStar[x]),(SuperStar[z])}={τ,η,α,ξ,ζ}; {(SuperStar[τ]),(SuperStar[η]),(SuperStar[α]),(SuperStar[ξ]),(SuperStar[ζ])}={t,y,a,x,z}; (SuperStar[((Subscript[u_, i_]))]):=(Subscript[((SuperStar[u])), i]);

{(SuperStar[x]), (SuperStar[(Subscript[α, 3])]), (SuperStar[(Subscript[z, 2])])}

Kδ/:(Subscript[Kδ, i_,j_]):=If[i===j,1,0];

Zip

(Subscript[Zip, {}])[P_]:=P; (Subscript[Zip, {ζ_,ζs___}])[P_] := (Expand[P//(Subscript[Zip, {ζs}])] /. f_.(ζ^(d_.)):>(∂_({(SuperStar[ζ]),d}))f) /. (SuperStar[ζ])->0

(Subscript[Zip, {ξ}])[((ξ^2)+ξ+3)((x^5)(E^x)+7x)+99a]

(Subscript[Zip, {(Subscript[η, 2])}])[(E^(δ x (Subscript[y, 2])))ξ (Subscript[η, 2])]

(Subscript[Zip, {ξ,(Subscript[η, 2])}])[((ξ^6)+ξ+3+2ξ (Subscript[η, 2]))((x^5)(E^(b x))+7x)+99a+(E^(δ x (Subscript[y, 2])))ξ (Subscript[η, 2])]

E0=𝔼[Sum[(Subscript[a, 10i+j])(Subscript[x, i])(Subscript[ξ, j]),{i,3},{j,3}],1+ϵ Sum[(Subscript[f, i])[(Subscript[x, 1]),(Subscript[x, 2]),(Subscript[x, 3])](Subscript[ξ, i]),{i,3}]+ϵ Sum[(Subscript[f, 10i+j])[(Subscript[x, 1]),(Subscript[x, 2]),(Subscript[x, 3])](Subscript[ξ, i])(Subscript[ξ, j]),{i,3},{j,3}]]

𝔼 /: (Subscript[Zip, ζs_List])@𝔼[Q_,P_] := Module[{ζ,z,zs,c,ys,ηs,qt,zrule,Q1,Q2},
zs=Table[(SuperStar[ζ]),{ζ,ζs}];
c=Q/.Alternatives@@(ζs⋃zs)->0;
ys=Table[(∂_ζ)(Q/.Alternatives@@zs->0),{ζ,ζs}];
ηs=Table[(∂_z)(Q/.Alternatives@@ζs->0),{z,zs}];
qt=Inverse@Table[(Subscript[Kδ, z,(SuperStar[ζ])])-(∂_(z,ζ))Q,{ζ,ζs},{z,zs}];
zrule=Thread[zs->qt.(zs+ys)];
Q1=c+ηs.zs/.zrule;
Q2=Q1/.Alternatives@@zs->0;
Simplify /@ 𝔼[Q2,Det[qt](E^(-Q2))(Subscript[Zip, ζs])[(E^Q1)(P/.zrule)]] ];

(Subscript[Zip, {(Subscript[ξ, 1]),(Subscript[ξ, 2])}])@E0

lhs=(Subscript[Zip, {(Subscript[ξ, 1]),(Subscript[ξ, 2])}])@E0

rhs12=(Subscript[Zip, {(Subscript[ξ, 1])}])@(Subscript[Zip, {(Subscript[ξ, 2])}])@E0

lhs==rhs12

rhs21=(Subscript[Zip, {(Subscript[ξ, 2])}])@(Subscript[Zip, {(Subscript[ξ, 1])}])@E0

rhs12==rhs21

Eh=𝔼[h Sum[(Subscript[a, 10i+j])(Subscript[x, i])(Subscript[ξ, j]),{i,3},{j,3}],1+ϵ Sum[(Subscript[f, i])[(Subscript[x, 1]),(Subscript[x, 2]),(Subscript[x, 3])](Subscript[ξ, i]),{i,3}]+ϵ Sum[(Subscript[f, 10i+j])[(Subscript[x, 1]),(Subscript[x, 2]),(Subscript[x, 3])](Subscript[ξ, i])(Subscript[ξ, j]),{i,3},{j,3}]]

lhs=Normal[Eh /. 𝔼[Q_,P_] :> Series[P (E^Q),{h,0,1}]] // (Subscript[Zip, {(Subscript[ξ, 1]),(Subscript[ξ, 2])}])

rhs0=(Subscript[Zip, {(Subscript[ξ, 1]),(Subscript[ξ, 2])}])[Eh];
rhs1=Normal[rhs0/. 𝔼[Q_,P_] :> Series[P (E^Q),{h,0,1}]]

Simplify[lhs==rhs1]

Bind

𝔼/:𝔼[Q1_,P1_]𝔼[Q2_,P2_]:=𝔼[Q1+Q2,P1*P2];

(Subscript[Bind, ζs_List])[L_𝔼,R_𝔼] := Module[{n,hideζs,hidezs},
hideζs=Table[ζs[[i]]->(Subscript[ζ, n@i]),{i,Length@ζs}];
hidezs=Table[(SuperStar[ζs[[i]]])->(Subscript[z, n@i]),{i,Length@ζs}];
(Subscript[Zip, ζs/.hideζs])[(L/.hidezs)(R/.hideζs)] ];

(Subscript[Bind, {(Subscript[ξ, 2])}])[𝔼[ξ((Subscript[x, 1])+(Subscript[x, 2])),1],𝔼[(Subscript[ξ, 2])((Subscript[x, 2])+(Subscript[x, 3])),1]]

(Subscript[Bind, {(Subscript[ξ, 2])}])[𝔼[((Subscript[ξ, 2])+(Subscript[ξ, 3]))(Subscript[x, 2]),1],𝔼[((Subscript[ξ, 1])+(Subscript[ξ, 2]))x,1]]

(Subscript[Bind, {(Subscript[ξ, 1]),(Subscript[ξ, 2])}])[𝔼[((Subscript[ξ, 2])+(Subscript[ξ, 3]))(Subscript[x, 2])+(Subscript[ξ, 1])(Subscript[x, 1]),1],𝔼[((Subscript[ξ, 1])+(Subscript[ξ, 2]))x,1]]