Skip to content

refactor(Circuit): changes gate arguments to use an inductive wire type rather than Fin (inputCount + gateCount) - #957

Open
SamuelSchlesinger wants to merge 2 commits into
leanprover:mainfrom
SamuelSchlesinger:samschlesinger/wire-refactor
Open

SamuelSchlesinger wants to merge 2 commits into
leanprover:mainfrom
SamuelSchlesinger:samschlesinger/wire-refactor

Conversation

@SamuelSchlesinger

Copy link
Copy Markdown
Collaborator

This makes the proofs a lot better at the cost of a small Wire library.

With constructor wires, simp proves `Program.trace_gate_last` from
`trace_gateWire`, `gateFunction_apply`, and `eval_gate_last`, which the
simpNF linter rejects. Rename `Wire.equivSum` to `Wire.equiv` to match
`Line.equiv` and `Circuit.equiv`, and reduce `relabel_line_eval` to a term.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant