Turn a question about your own records into the exact mathematical form a quantum annealer accepts, solve it locally or on a vendor machine — and get told, in the same reply, whether the answer that came back was actually the best one.
An illustration of one optimisation job travelling both ways. On top, the usual gateway architecture: five extra components between the data and the machine. Below, AtomicDB with its built-in gateway: the problem leaves from the records and the answer lands back on them.
There is no modelling exercise. Point at a record and its neighbourhood is formulated automatically as a QUBO — the canonical form an annealer takes directly and a gate machine compiles to.
from business records to qubits, with nothing in betweenAny quantum or annealing result is a heuristic: good, not guaranteed. When the problem is small enough to settle outright, it is settled exhaustively and both answers are reported side by side.
an energy with no optimum beside it is only plausibleA deterministic local solver ships with the engine and needs no account, no credentials and no network. The vendor machines are drop-in: supply your credentials and the same problem goes to real hardware.
start today on the simulator; change one setting laterA neighbourhood of 18 records taken from the live graph, split to maximise separation. Choose a backend, solve, then verify.
The split that cuts the most relationships — the fault line through a neighbourhood.
submitted flag is the load-bearing element. A local preview is never dressed up as
a quantum result — the caller can always distinguish a simulated answer from a submitted one,
programmatically, without inspecting prose.
qsubmit.py carries the vendor SDKs, performs the call, prints one line of JSON, and exits.A QUBO is defined over binary variables with linear and pairwise-quadratic terms. An association graph is defined over nodes and weighted pairwise associations. A relational system must first derive a graph from its tables before it can formulate anything — a join, a materialisation, an adjacency construction. AtomicDB stores the graph natively, so formulation reads what is already there.
| Association graph | QUBO |
|---|---|
| node | binary variable |
| association between two nodes | quadratic coupling |
| node-level bias / weight | linear term |
| a partition of the graph | a bit-string |
Vendor-neutral — an annealer consumes it directly, and a gate-based machine consumes it via QAOA.
Nothing is exported, and no problem file is hand-written.
Its surrounding network becomes the problem — bounded to a size a machine can hold.
Written out as a QUBO / Ising model: one binary variable per record, one weight per relationship.
The local annealer, or a vendor QPU if you have configured one. Same problem either way.
Small problems are also solved exhaustively, so the reply says optimal true or
false, and the gap.
The answer comes back as two groups of your actual records — not a vector of bits.
Today, correcting CHINO requires somebody to notice CHINO. Posed as one optimisation, the user is shown every value that appears to be the same thing said differently, as a single reviewable list — scored together, so the solver cannot propose that A is B and B is C while denying that A is C.
the difference between auditing your data and being handed the auditSegmentation today is a set of rules an analyst writes — revenue bands, regions, industry codes — encoding what somebody already believed before looking. Community detection over the merged graph returns groupings that emerge from the relationships themselves.
behaviour rather than assumptionReps to territories, staff to projects, stock to locations, cases to reviewers — each a binary assignment under constraints that interact, which is precisely a QUBO. The gain is that every constraint is satisfied simultaneously rather than in the order the spreadsheet happened to apply them.
A ranked list is wrong whenever the items interact. The top ten products by revenue may be near-substitutes for one another; the best ten to stock is a different set entirely. Selection with pairwise interaction terms is a QUBO, and the answer is a set rather than a ranking.
the difference between a report and a decisionThese have no spreadsheet answer, so they are never put on an agenda:
“Split this business into two divisions so that the fewest working relationships are broken.” · “Which twelve customers, if we lost them, would disconnect the most of our network?” · “What is the smallest set of products whose removal simplifies the catalogue without losing a customer?”
For a decision that matters, “here is an assignment” is weaker than “here is an assignment, and it is optimal”. Because the engine computes the exact ground state below its enumeration limit, you receive a result and a bound on it — which converts an optimisation output from a suggestion into evidence.
the difference between a figure that survives a board meeting and one that does notThe environment of the ATLAS host process. Nowhere else.
The interface asks only which backends exist and whether each is configured — a boolean. No token is entered in a form, transmitted in a request, or stored in browser state.
The submitter receives only the provider name, the QUBO file path and a shot count. Anything visible in a process listing is non-sensitive.
Read from the environment inside the subprocess and passed to the SDK directly.
The C engine checks the required variables are present before spawning anything. If they are not, no process starts and no request is made — the response simply names what is missing.
| Situation | Reported | submitted |
|---|---|---|
| Simulator selected in-engine simulated annealing | ok | 0 |
| Provider, credentials absent local preview; response names the exact missing variables | not configured | 0 |
| Provider, submitter unavailable local preview, stated plainly | sidecar not reachable | 0 |
| Provider, credentials present submitted to the vendor backend | ok (QPU) | 1 |
No additional service, no network path beyond outbound HTTPS to the vendor, and no change to the engine, the schema, or the data.
A SymPy-backed symbolic engine sits alongside with six domains — algebra, calculus, geometry,
mathematics, physics, trigonometry — kept apart deliberately, because the same symbol means different things
in each (e is Euler's number in mathematics and energy in physics).
A formula built in that builder converts to the same QUBO form and is solved and verified by the same machinery that handles the graph problems. The workflow is identical from step 4 onward; only the origin of the QUBO differs.
| Problem | Formulation |
|---|---|
| Graph partitioning / max-cut | minimise cross-partition association weight |
| Community detection | partition maximising internal association density |
| Portfolio / resource selection | binary selection under quadratic interaction terms |
| Scheduling and assignment | binary assignment with quadratic conflict penalties |
| Feature / subset selection | binary inclusion with pairwise redundancy terms |