{3,1} atom_embed(A) :- pt(A).
{3,1} atom_embed(A) :- bi(A).
{3,1} atom_embed(A) :- sb(A).
{3,1} atom_embed(A) :- br(A).
{3,1} atom_embed(A) :- n_ar(A).
{3,1} atom_embed(A) :- se(A).
{3,1} atom_embed(A) :- c_1(A).
{3,1} atom_embed(A) :- c_3(A).
{3,1} atom_embed(A) :- si(A).
{3,1} atom_embed(A) :- c_2(A).
{3,1} atom_embed(A) :- s_o2(A).
{3,1} atom_embed(A) :- sn(A).
{3,1} atom_embed(A) :- n_pl3(A).
{3,1} atom_embed(A) :- ge(A).
{3,1} atom_embed(A) :- n_2(A).
{3,1} atom_embed(A) :- n_1(A).
{3,1} atom_embed(A) :- mn(A).
{3,1} atom_embed(A) :- cd(A).
{3,1} atom_embed(A) :- o_3(A).
{3,1} atom_embed(A) :- n_4(A).
{3,1} atom_embed(A) :- s_o(A).
{3,1} atom_embed(A) :- c_ar(A).
{3,1} atom_embed(A) :- o_2(A).
{3,1} atom_embed(A) :- n_3(A).
{3,1} atom_embed(A) :- p_3(A).
{3,1} atom_embed(A) :- s_3(A).
{3,1} atom_embed(A) :- f(A).
{3,1} atom_embed(A) :- ag(A).
{3,1} atom_embed(A) :- s_2(A).
{3,1} atom_embed(A) :- cl(A).
{3,1} atom_embed(A) :- i(A).
{3,1} atom_embed(A) :- co(A).
{3,1} atom_embed(A) :- er(A).
{3,1} atom_embed(A) :- n_am(A).
{3,1} atom_embed(A) :- cr(A).
{3,1} atom_embed(A) :- as(A).
{3,1} atom_embed(A) :- cu(A).
{3,1} atom_embed(A) :- pb(A).
{3,1} atom_embed(A) :- na(A).
{3,1} atom_embed(A) :- pd(A).
{3,1} atom_embed(A) :- v(A).
{3,1} atom_embed(A) :- rh(A).
{3,1} atom_embed(A) :- o_co2(A).
{3,1} atom_embed(A) :- hg(A).
{3,1} atom_embed(A) :- fe(A).
atom_embed/1 {3,1}
{3,1} bond_embed(B) :- b_ar(B).
{3,1} bond_embed(B) :- b_2(B).
{3,1} bond_embed(B) :- b_am(B).
{3,1} bond_embed(B) :- b_1(B).
{3,1} bond_embed(B) :- b_3(B).
bond_embed/1 {3,1}



bond_embed_l1(B) :- {3,3} bond_embed(B), bond(X,Y,B), {3,3} atom_embed(X), {3,3} atom_embed(Y).

bond_embed_l2(B) :- {3,3} bond_embed_l1(B), bond(X,Y,B), {3,3} l1_embed(X), {3,3} l1_embed(Y).



{3,3} l1_embed(X) :- {3,3} atom_embed(X), {3,3} atom_embed(Y), {3,1} bond(X,Y,B), {3,3} bond_embed(B).

{3,3} l2_embed(X) :- {3,3} l1_embed(X), {3,3} l1_embed(Y), {3,1} bond(X,Y,B), {3,3} bond_embed_l1(B).

{3,3} l3_embed(X) :- {3,3} l2_embed(X), {3,3} l2_embed(Y), {3,1} bond(X,Y,B), {3,3} bond_embed_l2(B).



{1,3} predict :- {3,3} l3_embed(X).