$ ./apply-tests.sh 3 ## pass: naked ket ## pass: int-coeff ket ## pass: float-coeff ket ## pass: literal superposition ## pass: op ket ## pass: op int ket + op ket ## pass: op (literal superposition) ## pass: multi-op, ket ## pass: multi-op, ket ## pass: multi-op, ket ## pass: union(literal superposition,literal superposition) ## pass: union(op ket, op ket) ## pass: union(literal sp, float op ket) ## pass: mult[] op ket ## pass: int op ket ## pass: op float op ket ## pass: op float ket ## pass: junk ket ## pass: junk op ket ## pass: op junk ket ## pass: op ket + ket + ket ## fail: op ket + (ket + ket) ## fail: op ket + (ket) ## pass: (ket) + op ket ## pass: (ket) ## pass: (ket + ket) ## pass: float (ket + ket) ## pass: op (ket + ket) ## pass: junk (ket + ket) ## pass: range(ket,ket) ## pass: simm(literal-sp,literal-sp) ket ## pass: simm(literal-sp,literal-sp) int ket ## pass: mult(literal-sp,literal-sp) ## pass: float mult(literal-sp,literal-sp) ## pass: union(literal-sp,op(ket + ket)) ## pass: union(literal-sp,float op(ket + ket)) ## pass: junk(literal-sp,ket) ## pass: junk(ket,ket) ## pass: union(ket,ket,ket) ## pass: union(literal-sp,ket,literal-sp) ## pass: sp(literal-sp) ## fail: (ket,ket) ## pass: arithmetic(ket,|+>,ket) ## pass: ket + (ket) ## pass: ket-simm(literal-sp,literal-sp) ## pass: int algebra(literal-sp,|^>,ket) + ket ## fail: algebra(ket,ket,ket) + algebra(ket,ket,ket) ## pass: arithmetic(op-ket,ket,op-ket) pass: 44 fail: 4