Skip to content

Add el-geometry - #289

Merged
thisac merged 5 commits into
dwavesystems:mainfrom
mahdiehmalekian:clique
Aug 18, 2026
Merged

Add el-geometry#289
thisac merged 5 commits into
dwavesystems:mainfrom
mahdiehmalekian:clique

Conversation

@mahdiehmalekian

Copy link
Copy Markdown
Contributor

Introduces a new package tree for clique embedder and adds the first module, el_geometry.py, which implements the pure geometry of the L-shaped ("el") templates used to build clique embeddings on a defected Zephyr graph.

Changes
minorminer/embedders/__init__.py
minorminer/embedders/clique/__init__.py
minorminer/embedders/clique/_zephyr/__init__.py
New module minorminer/embedders/clique/_zephyr/el_geometry.py computes ideal el-template geometry for Zephyr. All functions are k-agnostic (quotient) and depend only on the Zephyr grid size m and the ideal topology, not on the tile size t or on which nodes/edges a specific graph contains. Uses Zephyr Cartesian (x, y, k) coordinates following dwave.graphs.ZephyrCartesianCoord.

Matching tests:
tests/embedders/__init__.py, tests/embedders/clique/__init__.py, tests/embedders/clique/zephyr/__init__.py,
tests/embedders/clique/zephyr/test_el_geometry.py

Note
This is the first piece of a larger Zephyr clique-embedder effort; it lands the geometry layer only, with no public API wired up yet.

AI use
Used AI to clean up my code and complete, edit documentation. Also used it to write the test suite. Checked and edited everything myself.

@mahdiehmalekian

Copy link
Copy Markdown
Contributor Author

While this module works with the concept of Zephyr Cartesian coordinates introduced in dwavesystems/dwave-graphs#275, this module is independent of that PR.

@mahdiehmalekian

mahdiehmalekian commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

Note to reviewers: This is the first of a series. Subsequent clique-embedder PRs depend on this PR and can only follow once this merges. So would much appreciate a speedy review.

@mahdiehmalekian mahdiehmalekian changed the title Add embedders/clique/_zephyr with el-geometry Add el-geometry Jul 31, 2026
@mahdiehmalekian

Copy link
Copy Markdown
Contributor Author

Undid the creation of embedders directory and moved el_geometry.py from embedders/clique/_zephyr to utils/_clique per Slack discussion

Comment thread minorminer/utils/_clique/el_geometry.py
Comment thread tests/utils/clique/test_el_geometry.py Outdated
Comment thread tests/utils/clique/test_el_geometry.py Outdated
Comment thread minorminer/utils/_clique/el_geometry.py
Comment thread minorminer/utils/_clique/el_geometry.py Outdated
Comment thread tests/utils/clique/test_el_geometry.py Outdated
Comment thread minorminer/utils/_clique/el_geometry.py Outdated
Comment thread tests/utils/clique/test_el_geometry.py Outdated
Comment thread minorminer/utils/_clique/el_geometry.py Outdated
@thisac
thisac merged commit 777d7d8 into dwavesystems:main Aug 18, 2026
34 checks passed
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.

4 participants