MCPcopy Index your code
hub / github.com/domain-independent-dp/didp-rs

github.com/domain-independent-dp/didp-rs @v0.10.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.10.1 ↗ · + Follow
4,701 symbols 27,481 edges 200 files 426 documented · 9%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Domain-Independent Dynamic Programming (DIDP)

minimum rustc 1.65 License License: MIT

This repository is a Rust implementation of Dynamic Programming Description Language (DyPDL) and its solvers for Domain-Independent Dynamic Programming (DIDP).

Packages

Quick Start

If you want to use DIDP, we recommend using the Python interface, DIDPPy.

Development

If you want to develop the DyPDL library, solvers, and interfaces, install Rust and clone this repository.

git clone https://github.com/domain-independent-dp/didp-rs
cd didp-rs

Install Rust

Follow the instruction on the official webpage: https://www.rust-lang.org/tools/install

Run Tests

cargo test --no-default-features

Development Environment

Learn Rust

Extension points exported contracts — how you extend this code

Search (Interface)
Trait representing an anytime search algorithm. [13 implementers]
dypdl-heuristic-search/src/search_algorithm/search.rs
CheckExpression (Interface)
Trait for checking if an expression is valid. [11 implementers]
dypdl/src/lib.rs
ToYaml (Interface)
(no doc) [9 implementers]
didp-yaml/src/dypdl_yaml_dumper/to_yaml.rs
StateInformation (Interface)
Information stored in a state registry. [9 implementers]
dypdl-heuristic-search/src/search_algorithm/data_structure/state_registry.rs
AccessTarget (Interface)
Trait for accessing the values in the target state. # Examples ``` use dypdl::prelude::*; let mut model = Model::defa [4 …
dypdl/src/lib.rs
ToYamlString (Interface)
(no doc) [20 implementers]
didp-yaml/src/dypdl_yaml_dumper/expression_to_string.rs
GetTransitions (Interface)
Trait to get a sequence of transitions. [8 implementers]
dypdl-heuristic-search/src/search_algorithm/data_structure/transition_chain.rs
StateInterface (Interface)
Trait representing a state in DyPDL. [4 implementers]
dypdl/src/state.rs

Core symbols most depended-on inside this repo

insert
called by 1900
dypdl-heuristic-search/src/search_algorithm/data_structure/beam.rs
clone
called by 1460
dypdl-heuristic-search/src/parallel_search_algorithm/data_structure/search_node/sendable_f_node.rs
add_integer_resource_variable
called by 358
dypdl/src/lib.rs
eval
called by 335
didppy/src/model/expression.rs
add_object_type
called by 303
didppy/src/model.rs
add_integer_variable
called by 293
dypdl/src/lib.rs
add_object_type
called by 292
dypdl/src/lib.rs
add_effect
called by 269
didppy/src/model/transition.rs

Shape

Function 3,320
Method 1,062
Class 209
Enum 70
Interface 29
Route 11

Languages

Rust87%
Python13%

Modules by API surface

didppy/src/model/expression.rs485 symbols
didppy/src/model.rs314 symbols
dypdl/src/lib.rs300 symbols
didppy/tests/test_model.py194 symbols
didppy/tests/model/test_expression.py176 symbols
didppy/src/model/table.rs155 symbols
dypdl/src/state.rs132 symbols
didp-yaml/src/dypdl_parser/expression_parser/element_parser.rs101 symbols
didppy/tests/model/test_table.py96 symbols
dypdl/src/expression/continuous_expression.rs93 symbols
dypdl-heuristic-search/src/search_algorithm/data_structure/state_registry.rs85 symbols
dypdl/src/expression/numeric_operator.rs82 symbols

For agents

$ claude mcp add didp-rs \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page