This directory contains formal academic documentation for the AffineScript programming language, including proofs, specifications, white papers, and mechanized verification.
| Document | Description | Status |
|---|---|---|
Progress and preservation theorems |
Complete |
|
Linearity and quantity proofs |
Complete |
|
Algebraic effects metatheory |
Complete |
|
Affine/linear type safety |
Complete |
|
Extensible records metatheory |
Complete |
|
Indexed types and refinements |
Complete |
| Document | Description |
|---|---|
Design rationale and related work |
|
Bidirectional typing with quantities |
|
Algebraic effects and handlers |
| Document | Description | Status |
|---|---|---|
Small-step semantics |
Complete |
|
Domain-theoretic model |
Complete |
|
Hoare logic for AffineScript |
Complete |
| Document | Description |
|---|---|
Category theory models |
|
Curry-Howard and proof theory |
|
Decidability and complexity bounds |
| Document | Description | Status |
|---|---|---|
Coq proof development |
Stub |
|
Lean 4 proof development |
Stub |
|
Agda proof development |
Stub |
@misc{affinescript2024,
title = {AffineScript: A Quantitative Dependently-Typed Language with Algebraic Effects},
author = {AffineScript Contributors},
year = {2024},
howpublished = {\url{https://github.com/hyperpolymath/affinescript}}
}-
Complete: Theoretical content complete, pending implementation verification
-
Stub: Placeholder awaiting implementation of corresponding compiler component
-
TODO: Section identified but not yet written
Many proofs in this documentation depend on compiler components that are
not yet implemented. These are marked with [IMPL-DEP] tags
throughout the documents, indicating which compiler phase must be
completed before the proof can be fully verified against the
implementation.
| Proof Area | Required Implementation |
|---|---|
Type soundness |
Type checker |
Effect soundness |
Effect inference |
Ownership soundness |
Borrow checker |
Termination |
Termination checker |
Refinement verification |
SMT integration |