The circuit in benchmark/single_qubit_gates.jl originally has 30 gates, and could be simplified into at least 20 gates. A naive cancellation strategy could achieve a simplification of 22 gates, while the remaining 2 gates require a combination of commute and nearby cancellation rules. If egraph idea is really powerful, it should be able to simplify the circuit to 20 gates.
However, the test shows it can not be saturated, and could only achieve a simplification to 22 gates, after a timeout.
Related issues of the hardness of saturations are egg discussion
The circuit in benchmark/single_qubit_gates.jl originally has 30 gates, and could be simplified into at least 20 gates. A naive cancellation strategy could achieve a simplification of 22 gates, while the remaining 2 gates require a combination of commute and nearby cancellation rules. If egraph idea is really powerful, it should be able to simplify the circuit to 20 gates.
However, the test shows it can not be saturated, and could only achieve a simplification to 22 gates, after a timeout.
Related issues of the hardness of saturations are egg discussion