5c6ab720b91aa4850c19623c872a4a31b361d370
[strong_simulation_gauss_sum_rank.git] / test.bash
1 #!/bin/bash
2 # simple Bash script to check if Gauss sum code works
3
4 # choose the gauss sum multiple decomposition you want to test
5 gausssumcode=./gausssums_multipleof6
6
7 # choose the number of qubits and T gates on those qubits
8 # NOTE: numqubits must be a multiple of your gauss sum tensor multiple!
9 # e.g. if you test gausssums_multipleof6 then numqubits=6*n for some integer n
10 numqubits=6
11 numTgates=4
12
13 numPaulis=1 # we want numPaulis to be 1 for the loop below
14
15 numruns=20
16
17 echo "Starting test of $numruns random Pauli expectation values..."
18 for i in $(seq 1 $numruns)
19 do
20   sleep 1;a=$(stdbuf -oL ./randommultipleinputPaulis $numqubits $numTgates $numPaulis > inputPaulis.txt && $gausssumcode < inputPaulis.txt | tail -1)
21   b=$(stdbuf -oL ./hilbertspace_vector < inputPaulis.txt | tail -n1)
22   echo $i $a $b
23   if [ "$a" == "$b" ]
24   then
25     continue
26   else
27     echo "NOT EQUAL!"
28     break
29   fi
30 done
31 echo "Test passed!"