FrameX-Doc
FrameX is an offline, domain-neutral frame-logic engine with a Python host for tools and language models, developed by the Chair of Data Science and Natural Language Processing at the University of St. Gallen. It derives conclusions from facts and rules, answers queries and explains its reasoning.
In a hybrid system, models read, phrase and propose; rules decide which evidence counts and what may happen next. This documentation covers the public FrameX-Core 0.4.4 export and the coupling patterns introduced in Hybrid AI Studio EX06.
Tip
Start with Quick Start, then the language tutorial. For language-model integration, read Hybrid AI with FrameX and Tool Calling.
FrameX Syntax
- World Assumption
- Variables
- Comments
- Classes and Subclasses
- Membership
- Attribute Signatures
- Facts
- Rules
- External Requests
- Property Declarations
- Namespaces and Identity
- Paths
- Constraints
- Queries
- Expectations
- Truth Values
Python API
- Python API overview
- Installation and Quick Start
- Add FrameX to a uv Project
- Client
- Tool Calling
- Tool Reference
- Model Settings and Replay
- Dialogue and Interviews
Hybrid AI with FrameX
- Overview
- Foundations: Invariants and Moves
- Thirteen Coupling Patterns
- Choosing and Combining Patterns
- Sources and Version Scope
Examples
Tutorial
- Tutorial overview
- 1. Your first object, rule and question
- 2. A small family knowledge graph
- 3. Properties, identity and multiple values
- 4. Classes and inheritance
- 5. Parameterized methods are relations
- 6. Schemas and consistency checks
- 7. Navigate with visible joins
- 8. Recursion and the fixed point
- 9. Missing evidence: open and closed worlds
- 10. Close only what is complete
- 11. Ordered data and numeric conditions
- 12. Namespaces and modules are different
- 13. Inspect the object model
- 14. Provenance: a reason is not a probability
- 15. From knowledge to controlled agents
- Quick reference
- Practice and verification
Python API Exercise
- Exercise overview
- Task 1: Connect and Ask
- Task 2: Reading the Answer
- Task 3: Growing the Knowledge Base
- Task 4: Making the Engine Explain Itself
- Task 5: Revising Safely
- Task 6: Worlds and Validation
- Task 7: When Things Go Wrong
- Task 8: Solution and What Comes Next