GitHunt
JU

Programming by Navigation Rust library

Programming by Navigation

Programming by Navigation is an
interactive program synthesis problem in which a step provider provides a list
of next steps that a step decider can choose between.

To solve the Programming by Navigation Synthesis Problem, these steps are
required to satisfy properties called Strong Soundness and Strong Completeness,
which roughly say that all provided steps can lead to a valid solution and that
all possibly-reachable valid solutions are reachable among just the provided
steps (respectively).

This Rust crate provides a helpful interface for working with the concepts
defined in Section 3 of the
Programming by Navigation paper.

Languages

Rust100.0%

Contributors

Created December 9, 2025
Updated February 7, 2026
justinlubin/pbn-rs | GitHunt