Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -106,9 +106,10 @@ coverage/
biome.jsonc-backup/

########################################
# MkDocs
# VitePress
########################################
site/
.vitepress/dist
.vitepress/cache

########################################
# IDE: VSCode / JetBrains / Vim / Emacs
Expand Down
74 changes: 74 additions & 0 deletions .vitepress/config.mts
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
import { defineConfig } from "vitepress";
import path from "node:path";

// https://vitepress.dev/reference/site-config
export default defineConfig({
title: "DS - A Deductive System",
description:
"A deductive system for logical inference, implemented in C++ with bindings for Python and TypeScript/JavaScript",
srcDir: "docs",
themeConfig: {
// https://vitepress.dev/reference/default-theme-config
nav: [
{ text: "Home", link: "/" },
{ text: "Getting Started", link: "/getting-started/installation" },
{ text: "Core Concepts", link: "/concepts/terms" },
{ text: "API Reference", link: "/api/typescript" },
{ text: "Support Packages", link: "/support-packages/bnf" },
{ text: "Examples", link: "/examples/basic" },
],

sidebar: [
{
text: "Getting Started",
items: [
{ text: "Installation", link: "/getting-started/installation" },
{ text: "Quick Start", link: "/getting-started/quickstart" },
],
},
{
text: "Core Concepts",
items: [
{ text: "Terms", link: "/concepts/terms" },
{ text: "Rules", link: "/concepts/rules" },
{ text: "Search Engine", link: "/concepts/search" },
],
},
{
text: "API Reference",
items: [
{ text: "TypeScript API", link: "/api/typescript" },
{ text: "Python API", link: "/api/python" },
{ text: "C++ API", link: "/api/cpp" },
],
},
{
text: "Support Packages",
items: [
{ text: "BNF", link: "/support-packages/bnf" },
{ text: "E-Graph", link: "/support-packages/egg" },
],
},
{
text: "Examples",
items: [
{ text: "Basis Examples", link: "/examples/basic" },
{ text: "Sudoku", link: "/examples/sudoku" },
],
},
],

search: { provider: "local" },
socialLinks: [{ icon: "github", link: "https://github.com/USTC-KnowledgeComputingLab/ds" }],
},
vite: {
build: {
target: "esnext",
},
resolve: {
alias: {
atsds: path.resolve(__dirname, "../atsds/index.mts"),
},
},
},
});
13 changes: 6 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,12 @@ A deductive system for logical inference, implemented in C++. The library provid

## Features

- **Multi-Language Support**: Use the same deductive system in C++, Python, or TypeScript/JavaScript
- **Logical Terms**: Work with variables, items (constants/functors), and lists
- **Rule-Based Inference**: Define rules and facts, perform logical deduction
- **Unification and Matching**: Unify terms and match rules
- **Search Engine**: Built-in search mechanism for iterative inference
- **WebAssembly**: Run inference in the browser or Node.js environments
- **Type-Safe**: Strong typing support in TypeScript and Python
- **Multi-Language Support**: Seamlessly use the same deductive system in C++, Python, or TypeScript/JavaScript.
- **WebAssembly Performance**: Run high-performance deductive system in the browser or Node.js via Emscripten.
- **Rich Logical Terms**: Comprehensive support for variables, items, and nested lists.
- **Rule-Based Inference**: Flexible framework for defining rules and facts to perform complex logical deduction.
- **Unification Engine**: Powerful built-in mechanisms for term unification and rule matching.
- **Automated Search**: Built-in search engine for iterative inference.

## Installation

Expand Down
Loading