Skip to content

Add search into the core library. - #6

Merged
hzhangxyz merged 1 commit into
mainfrom
search_t
Jul 27, 2025
Merged

Add search into the core library.#6
hzhangxyz merged 1 commit into
mainfrom
search_t

Conversation

@hzhangxyz

Copy link
Copy Markdown
Member

TODO

  • C++ lib
  • Python lib
  • Javascript lib
  • C++ test
  • Python test
  • Javascript test

@hzhangxyz
hzhangxyz requested a review from Copilot July 26, 2025 08:33

This comment was marked as outdated.

This comment was marked as outdated.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds search functionality to the core library, enabling automated theorem proving and rule-based inference across C++, Python, and JavaScript implementations. The search functionality allows users to add rules and facts, then execute inference searches with customizable callbacks.

Key changes:

  • Implemented a complete search system with cycle-based inference tracking
  • Added bindings for all three target languages (C++, Python, JavaScript)
  • Updated example files to demonstrate the new search API instead of manual rule matching

Reviewed Changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
include/ds/search.hh Header file defining the search_t class interface and documentation
src/search.cc Core C++ implementation of the search functionality with rule/fact management
tsds/ds.cc JavaScript/Emscripten bindings for the search class
tsds/tsds.mts TypeScript wrapper class providing a clean API for search functionality
pyds/ds.cc Python/pybind11 bindings for the search class
pyds/search_t.py Python wrapper class with type hints and clean interface
pyds/init.py Export the Search class in the Python module
package.json Updated emcc command to use C++20 standard
examples/. Updated example files to use the new search API

Comment thread tsds/tsds.mts
Comment thread src/search.cc
Comment thread src/search.cc
Comment thread src/search.cc
@hzhangxyz
hzhangxyz merged commit edac756 into main Jul 27, 2025
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.

2 participants