Skip to content

jeff: squin to jeff conversion - #871

Open
nathanieltornow wants to merge 2 commits into
QuEraComputing:feat/jefffrom
nathanieltornow:feat/jeff-lower
Open

nathanieltornow wants to merge 2 commits into
QuEraComputing:feat/jefffrom
nathanieltornow:feat/jeff-lower

Conversation

@nathanieltornow

Copy link
Copy Markdown
Collaborator

This PR adds SquinToJeff, the reverse of JeffToSquin. It converts a squin kernel to a jeff method:

jeff_method = SquinToJeff().emit(kernel)

SquinToJeffValidation refuses each construct that jeff can't express. Next, QubitReferenceAnalysis names the qubit behind each value. Then the emitter Linearize gives each qubit one jeff wire.

@codecov

codecov Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

`eval_fallback` ran the bool check of `-` and `~` and the float checks of
arithmetic for every statement. These checks now live in `py.unary`,
`py.binop` and `py.cmp` rules. Each rule calls `eval_fallback` last, so its
statement still gets the general checks.

This branch has not been deployed

No deployments
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