Sign outOpen workspaceSign in

State

Search graph with a marked set

A graph over candidate states given by local rules rather than laid out — from any vertex you can name its neighbours — together with the rule that says which vertices are marked and the size bounds that fix how long a walk has to run. What makes this a different object from a domain plus an oracle is that moving costs less than starting again: the work already done at a vertex is still valid one step away, and a walk is worth running exactly when that is true.

A state is an object you can be holding, named once so that two routes reaching the same thing are drawn as reaching the same thing. It says nothing about how you got here or where you can go next — that is entirely in the processes below.

This is a kind of

This state is not recorded as a kind of anything else. It stands on its own in the vocabulary.

Narrower kinds of this

No state in the vocabulary is recorded as a narrower kind of this one.

Records that are this object

Nothing in the catalogue has been joined to this state. That is a gap in the join rather than a claim that no such object exists; the shelf on /repository lists what is joined and what is not, with the reason.

Work that arrives here

No recorded process returns this. Either it is where a reader starts — a problem, a matrix, a machine — or it is an object this graph names and no route yet reaches.

Work that starts here

  • Walk a graph to the vertex you want

    When candidates sit on a graph and the work done at one vertex is still worth something at its neighbour, walk the graph instead of sampling it — and pay per move rather than per candidate.