#
# Generate unconstrained optimized circuit with script.boolean
#
echo "*** Generating Unconstrained Optimized Circuit ***"
collapse
sweep; eliminate -1
simplify 
eliminate -1
sweep; eliminate 5
simplify 
resub -a
gkx -abt 30
resub -a; sweep
gcx -bt 30
resub -a; sweep
gkx -abt 10
resub -a; sweep
gcx -bt 10
resub -a; sweep
gkx -ab
resub -a; sweep
gcx -b
resub -a; sweep
eliminate 0
decomp -g *
eliminate -1; sweep
#
# Select parity-check code
#
pc_set_uncon
collapse
sweep
echo "*** Selecting Parity-Check Code ***"
pc_gen_parchk 25
#
# Perform structure-constrained logic optimization
#
echo "*** Performing Structure-Constrained Logic Optimization ***"
sweep; eliminate -1
pc_simplify
eliminate -1
sweep; eliminate 5
pc_simplify 
pc_resub -a
pc_gkx -abt 30
pc_resub -a; sweep
pc_gcx -bt 30
pc_resub -a; sweep
pc_gkx -abt 10
pc_resub -a; sweep
pc_gcx -bt 10
pc_resub -a; sweep
pc_gkx -ab
pc_resub -a; sweep
pc_gcx -b
pc_resub -a; sweep
eliminate 0
decomp -g *
eliminate -1; sweep
# Second pass
sweep; eliminate -1
pc_simplify
eliminate -1
sweep; eliminate 5
pc_simplify 
pc_resub -a
pc_gkx -abt 30
pc_resub -a; sweep
pc_gcx -bt 30
pc_resub -a; sweep
pc_gkx -abt 10
pc_resub -a; sweep
pc_gcx -bt 10
pc_resub -a; sweep
pc_gkx -ab
pc_resub -a; sweep
pc_gcx -b
pc_resub -a; sweep
eliminate 0
decomp -g *
eliminate -1; sweep
