Skip to content

Combining symbolic model-based RL and formal mathematics language Lean.

Notifications You must be signed in to change notification settings

Kripner/lean-worlds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

This repository accompanies the paper Symbolic World Models in Lean 4 for Reinforcement Learning accepted to the RLC 2025 Workshop on Programmatic Reinforcement Learning.

Notable files and folders are described below:

.
β”œβ”€β”€ common.py - Data structures for the evolutionary algorithm.
β”œβ”€β”€ gp.py - Implementation of the evolutionary / genetic algorithm.
β”œβ”€β”€ llm.py - The mutation function guided by a LLM.
β”œβ”€β”€ world_model.py - Wrapper around lean-server to enable Python interaction.
β”œβ”€β”€ mutation_prompt.txt - The mutation prompt listed in Appendix A in the paper.
β”œβ”€β”€ plot.py - Script for generating various plots.
β”œβ”€β”€ compute_series.py - Script for computing the time series shown in Figure 4 in the paper.
β”œβ”€β”€ eval.py - Script for evaluating a specific world model.
β”œβ”€β”€ requirements.txt
└── lean-server - The Lean server for executing the synthesized world models.
    β”œβ”€β”€ lakefile.toml
    β”œβ”€β”€ lake-manifest.json
    β”œβ”€β”€ lean-toolchain
    β”œβ”€β”€ Server
    β”‚   β”œβ”€β”€ Chess
    β”‚   β”‚   β”œβ”€β”€ Common.lean
    β”‚   β”‚   └── Fitness.lean
    β”‚   β”œβ”€β”€ Common.lean
    β”‚   β”œβ”€β”€ OracleRules.lean
    β”‚   β”œβ”€β”€ REPL.lean
    β”‚   └── Rules.lean
    └── Server.lean

About

Combining symbolic model-based RL and formal mathematics language Lean.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published