genStd = () => {
let res = [];
const dot = () => (`
digraph {
subgraph cluster_0 { re0; im0; }
subgraph cluster_1 { re1; im1; }
subgraph cluster_2 { re2; im2; }
subgraph cluster_3 { re3; im3; }
subgraph cluster_4 { re4; im4; }
subgraph cluster_5 { re5; im5; }
subgraph cluster_6 { re6; im6; }
subgraph cluster_7 { re7; im7; }
${res.join('')}
}
`);
let idx = 0;
const op = symb => (a, b) => {
const e = 't' + idx++;
res.push(`
${e} [label="${symb}", shape="circle"];
${a} -> ${e};
${b} -> ${e};
`);
return e;
};
return {
add: op('+'),
sub: op('-'),
mul: op('*'),
dot: dot
};
}