Skip to content

Commit e1521be

Browse files
Jonathan D.A. Jewellclaude
andcommitted
fix: Restore original README content
The previous RSR standardization commit accidentally replaced the full README content with a minimal template. This restores the original project documentation. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent bf4bbe1 commit e1521be

1 file changed

Lines changed: 257 additions & 53 deletions

File tree

README.adoc

Lines changed: 257 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,76 +1,280 @@
1-
= echidna
2-
Jonathan D.A. Jewell <jonathan.jewell@gmail.com>
3-
:toc: macro
4-
:icons: font
5-
:source-highlighter: rouge
6-
:experimental:
7-
:url-github: https://github.com/hyperpolymath/echidna
8-
:url-gitlab: https://gitlab.com/hyperpolymath/echidna
9-
:url-bitbucket: https://bitbucket.org/hyperpolymath/echidna
10-
:url-codeberg: https://codeberg.org/hyperpolymath/echidna
1+
<!--
2+
SPDX-License-Identifier: MIT AND Palimpsest-0.6
3+
SPDX-FileCopyrightText: 2024-2025 ECHIDNA Project Contributors
4+
-->
115

12-
Smart contract fuzzing and security analysis tool
6+
= ECHIDNA
137

14-
image:https://img.shields.io/badge/RSR-Certified-gold[RSR Certified]
15-
image:https://img.shields.io/badge/License-AGPL%20v3-blue[License]
8+
*E*xtensible *C*ognitive *H*ybrid *I*ntelligence for *D*eductive *N*eural *A*ssistance
169

17-
toc::[]
10+
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSES/MIT.txt)
11+
[![License: Palimpsest-0.6](https://img.shields.io/badge/License-Palimpsest--0.6-green.svg)](LICENSES/Palimpsest-0.6.txt)
12+
[![REUSE status](https://api.reuse.software/badge/gitlab.com/non-initiate/rhodinised/quill)](https://api.reuse.software/info/gitlab.com/non-initiate/rhodinised/quill)
13+
[![Pipeline](https://gitlab.com/non-initiate/rhodinised/quill/badges/main/pipeline.svg)](https://gitlab.com/non-initiate/rhodinised/quill/-/pipelines)
1814

19-
== Overview
15+
A neurosymbolic theorem proving platform that transforms Quill (Agda-only neural solver) into a universal multi-prover system supporting 12 theorem provers with aspect tagging, OpenCyc integration, and DeepProbLog probabilistic logic.
2016

21-
echidna is part of the link:https://rhodium.sh[Rhodium Standard] (RSR) ecosystem.
17+
== Features
2218

23-
Domain: *software-development*
19+
- *12 Theorem Prover Support*: Universal backend supporting Agda, Coq/Rocq, Lean, Isabelle, Z3, CVC5, Metamath, HOL Light, Mizar, PVS, ACL2, and HOL4
20+
- *Neurosymbolic AI*: Neural proof synthesis combined with symbolic verification
21+
- *Aspect Tagging*: Intelligent proof categorization and analysis
22+
- *OpenCyc Integration*: Common sense reasoning with ontological knowledge
23+
- *DeepProbLog*: Probabilistic logic programming for uncertain reasoning
24+
- *4-Language Architecture*: Rust (core), Julia (ML), ReScript (UI), Mercury/Logtalk (logic)
2425

25-
== Installation
26+
== Quick Start
2627

27-
[source,bash]
28-
----
29-
# Clone from GitHub (primary)
30-
git clone {url-github}
28+
=== Prerequisites
3129

32-
# Or from mirrors
33-
git clone {url-gitlab}
34-
git clone {url-codeberg}
35-
----
30+
- *Rust* 1.75 or later
31+
- *Julia* 1.10 or later
32+
- *Deno* 1.40 or later (for ReScript)
33+
- *Podman* (NOT Docker)
34+
- *Just* command runner
3635

37-
== RSR Stack
36+
=== Installation
3837

39-
This project follows RSR conventions:
38+
```bash
39+
= Clone the repository
40+
git clone https://gitlab.com/non-initiate/rhodinised/quill.git
41+
cd quill
4042

41-
* ✅ ReScript for frontend/logic
42-
* ✅ Deno for JS runtime
43-
* ✅ WASM for performance-critical code
44-
* ✅ Rust/OCaml/Haskell for systems/proofs
45-
* ✅ Guile/Scheme for configuration
46-
* ❌ No TypeScript
47-
* ❌ No Go
48-
* ❌ No npm
43+
= Build the project
44+
just build
4945

50-
== Mirrors
46+
= Run tests
47+
just test
5148

52-
[cols="1,2"]
53-
|===
54-
| Platform | URL
49+
= Run ECHIDNA
50+
just run
51+
```
5552

56-
| GitHub (primary) | {url-github}
57-
| GitLab | {url-gitlab}
58-
| Bitbucket | {url-bitbucket}
59-
| Codeberg | {url-codeberg}
60-
|===
53+
=== Using Podman Container
6154

62-
== License
55+
```bash
56+
= Build container
57+
podman build -f Containerfile -t echidna:latest .
58+
59+
= Run container
60+
podman run -it echidna:latest
61+
```
62+
63+
== Architecture
64+
65+
=== Prover Tiers
66+
67+
*Tier 1* (6 provers - Months 2-4):
68+
- Agda - Dependent type theory
69+
- Coq/Rocq - Interactive theorem prover
70+
- Lean - Functional programming and proving
71+
- Isabelle - Higher-order logic
72+
- Z3 - SMT solver
73+
- CVC5 - SMT solver
74+
75+
*Tier 2* (3 provers - Months 5-7):
76+
- Metamath - Plain text verifier (easiest, start here!)
77+
- HOL Light - Classical higher-order logic
78+
- Mizar - Mathematical vernacular
79+
80+
*Tier 3* (2 provers - Months 8-10):
81+
- PVS - Specification and verification
82+
- ACL2 - Applicative Common Lisp
83+
84+
*Tier 4* (1 prover - Months 11-12):
85+
- HOL4 - Higher-order logic
86+
87+
=== Technology Stack
88+
89+
- *Rust*: Core logic, FFI, WASM compilation
90+
- *Julia*: Machine learning components (NO Python allowed!)
91+
- *ReScript + Deno*: User interface
92+
- *Mercury/Logtalk*: Optional logic reservoir
93+
94+
=== Key Components
95+
96+
- *`echidna_provers.rs`*: Complete Rust trait system (600+ lines)
97+
- *Aspect Tagging System*: Proof classification and analysis
98+
- *Neural Solver*: Integration from original Quill project
99+
- *Universal Prover Abstraction*: Unified interface for all 12 provers
100+
101+
== Usage
102+
103+
=== Basic Theorem Proving
104+
105+
```rust
106+
use echidna::prover::{Prover, AgdaProver};
107+
108+
let prover = AgdaProver::new();
109+
let result = prover.prove("∀ (n : ℕ) → n + 0 ≡ n")?;
110+
println!("Proof: {}", result);
111+
```
112+
113+
=== Using Multiple Provers
114+
115+
```rust
116+
use echidna::prover::{ProverBackend, lean, coq, z3};
117+
118+
// Try multiple provers
119+
let backends = vec![lean(), coq(), z3()];
120+
for backend in backends {
121+
if let Ok(proof) = backend.prove(theorem) {
122+
println!("Proved with {}: {}", backend.name(), proof);
123+
break;
124+
}
125+
}
126+
```
127+
128+
=== Neural Proof Synthesis
129+
130+
```julia
131+
using ECHIDNA
132+
133+
= Train neural model
134+
model = train_proof_synthesizer(training_data)
135+
136+
= Generate proof candidates
137+
candidates = synthesize_proofs(model, theorem)
138+
139+
= Verify with symbolic prover
140+
for candidate in candidates
141+
if verify_proof(candidate)
142+
return candidate
143+
end
144+
end
145+
```
146+
147+
== Development
148+
149+
=== Building from Source
150+
151+
```bash
152+
= Install dependencies
153+
just deps
154+
155+
= Build all components
156+
just build
157+
158+
= Build specific component
159+
just build-rust
160+
just build-julia
161+
just build-rescript
162+
```
63163

64-
Licensed under AGPL-3.0-or-later OR LicenseRef-Palimpsest-0.5.
164+
=== Running Tests
65165

66-
See link:LICENSE[LICENSE] for details.
166+
```bash
167+
= Run all tests
168+
just test
169+
170+
= Run specific language tests
171+
just test-rust
172+
just test-julia
173+
174+
= Run integration tests
175+
just test-integration
176+
```
177+
178+
=== Quality Checks
179+
180+
```bash
181+
= Run all quality checks
182+
just check
183+
184+
= Individual checks
185+
just lint # REUSE, rustfmt, clippy
186+
just security # Trivy, cargo-audit
187+
just coverage # Test coverage
188+
```
189+
190+
== Documentation
191+
192+
- [Contributing Guidelines](CONTRIBUTING.md)
193+
- [Code of Conduct](CODE_OF_CONDUCT.md)
194+
- [Security Policy](SECURITY.md)
195+
- [Changelog](CHANGELOG.md)
196+
- [API Documentation](docs/)
197+
- [Prover Backend Guides](docs/)
198+
199+
== Roadmap
200+
201+
=== 12-Month Implementation Plan
202+
203+
*Months 1-2*: Foundation
204+
- Deploy RSR/CCCP compliance templates
205+
- Migrate Python code to Julia
206+
- Complete Tier 1 infrastructure
207+
208+
*Months 2-4*: Tier 1 Provers
209+
- Coq/Rocq implementation
210+
- Lean implementation
211+
- Isabelle implementation
212+
- Z3 and CVC5 integration
213+
214+
*Months 5-7*: Tier 2 Provers
215+
- Metamath (start here - easiest!)
216+
- HOL Light
217+
- Mizar
218+
219+
*Months 8-10*: Tier 3 Provers
220+
- PVS
221+
- ACL2
222+
223+
*Months 11-12*: Tier 4 and Polish
224+
- HOL4 implementation
225+
- Performance optimization
226+
- Documentation completion
67227

68228
== Contributing
69229

70-
See link:CONTRIBUTING.adoc[CONTRIBUTING.adoc].
230+
We welcome contributions! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
231+
232+
=== Critical Constraints
233+
234+
- ❌ *NO PYTHON* - Use Julia for all ML code
235+
- ✅ *RSR/CCCP Compliance* - Follow Rhodium Standard Repository guidelines
236+
- ✅ *Justfile PRIMARY* - Use Just, not Make
237+
- ✅ *GitLab-first* - This is a GitLab project
238+
- ✅ *Podman not Docker* - Always use Podman
239+
- ✅ *Dual Licensing* - MIT + Palimpsest v0.6
240+
241+
== License
242+
243+
This project is dual-licensed under:
244+
245+
- [MIT License](LICENSES/MIT.txt)
246+
- [Palimpsest License v0.6](LICENSES/Palimpsest-0.6.txt)
247+
248+
See [NOTICE](NOTICE) for complete license information.
249+
250+
== Citation
251+
252+
If you use ECHIDNA in your research, please cite:
253+
254+
```bibtex
255+
@software{echidna2025,
256+
title = {ECHIDNA: Extensible Cognitive Hybrid Intelligence for Deductive Neural Assistance},
257+
author = {ECHIDNA Project Contributors},
258+
year = {2025},
259+
url = {https://gitlab.com/non-initiate/rhodinised/quill},
260+
license = {MIT AND Palimpsest-0.6}
261+
}
262+
```
263+
264+
== Acknowledgments
265+
266+
- Based on the Quill project (Agda neural solver)
267+
- Built on the shoulders of the theorem proving community
268+
- See [AUTHORS.md](AUTHORS.md) for contributor list
269+
270+
== Contact
271+
272+
- *GitLab Issues*: https://gitlab.com/non-initiate/rhodinised/quill/-/issues
273+
- *Merge Requests*: https://gitlab.com/non-initiate/rhodinised/quill/-/merge_requests
274+
- *Security*: security@echidna-project.org
71275

72-
== Metadata
276+
---
73277

74-
* Domain: software-development
75-
* Framework: RSR (Rhodium Standard Repository)
76-
* Dublin Core: link:.well-known/dc.xml[.well-known/dc.xml]
278+
*Version*: 0.1.0
279+
*Status*: Active Development
280+
*Last Updated*: 2025-11-22

0 commit comments

Comments
 (0)