In[]:=
wick[a_]:=awick[a_,b_]:=pair[a,b]wick[a_,b__]:=If[Mod[Length[{b}],2]0,0,wick[b]+Sum[pair[a,{b}[[i]]]Delete[Unevaluated[wick[b]],i],{i,Length[{b}]}]]Format[pair[x_,y_]]:=〈xy〉;
In[]:=
rules=[q-][]0,[p-][]0,[][k-]->0,[p][k-p]->0,[-q][q-]->0;definitionsff=a->[],b->[k-],c->[],d->[p-];
B
a_
q
B
b_
q
B
a_
p
B
c_
p
B
a
k
B
b
k
B
a_
B
b_
B
c_
B
d_
k
B
a
k
B
b
k
B
c
p
B
d
p
In[]:=
fourfields=Expand[wick[a,b,c,d]]
Out[]=
〈ad〉〈bc〉+〈ac〉〈bd〉+〈ab〉〈cd〉
In[]:=
fourfields/.definitionsff/.rules
Out[]=
[][p-][k-][]+[][][k-][p-]+[][k-]〈[][p-]〉
B
a
k
B
d
p
B
b
k
B
c
p
B
a
k
B
c
p
B
b
k
B
d
p
B
a
k
B
b
k
B
c
p
B
d
p
In[]:=
fourfieldscopy=〈ad〉〈bc〉+〈ac〉〈bd〉+〈ab〉〈cd〉
Out[]=
〈bc〉〈ad〉+〈ac〉〈bd〉+〈ab〉〈cd〉
In[]:=
fourfieldscopy/.definitionsff/.rules
Out[]=
[k-][][][p-]+[][][k-][p-]
B
b
k
B
c
p
B
a
k
B
d
p
B
a
k
B
c
p
B
b
k
B
d
p