1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
//! AISP 5.1 Document Validation Library
//!
//! AISP (AI Symbolic Protocol) is a formal specification language designed for
//! precise AI-to-AI communication with <2% ambiguity.
//!
//! # Features
//!
//! - **Validation**: Validate AISP documents with semantic density scoring
//! - **Streaming**: Process large documents with streaming validation (feature: `streaming`)
//! - **Quality Tiers**: Automatic tier classification (⊘, ◊⁻, ◊, ◊⁺, ◊⁺⁺)
//! - **No-std Support**: Works without std (disable default features)
//!
//! # Quick Start
//!
//! ```rust
//! use aisp::{validate, Tier};
//!
//! let doc = r#"
//! 𝔸1.0.example@2026-01-16
//! γ≔test
//!
//! ⟦Ω:Meta⟧{ ∀D:Ambig(D)<0.02 }
//! ⟦Σ:Types⟧{ T≜ℕ }
//! ⟦Γ:Rules⟧{ ∀x:T:x≥0 }
//! ⟦Λ:Funcs⟧{ f≜λx.x }
//! ⟦Ε⟧⟨δ≜0.75;φ≜100;τ≜◊⁺⁺⟩
//! "#;
//!
//! let result = validate(doc);
//! assert!(result.valid);
//! assert!(result.tier >= Tier::Silver);
//! ```
//!
//! # Streaming Validation
//!
//! For large documents, use the streaming API:
//!
//! ```rust,ignore
//! use aisp::streaming::StreamValidator;
//!
//! let mut validator = StreamValidator::new();
//! validator.feed(chunk1);
//! validator.feed(chunk2);
//! let result = validator.finish();
//! ```
extern crate alloc;
// Re-exports
pub use ;
pub use Tier;
pub use ;
/// Required blocks for a valid AISP document
pub const REQUIRED_BLOCKS: = ;
/// Supported file extensions
pub const SUPPORTED_EXTENSIONS: = ;
/// Maximum default document size (64KB)
pub const DEFAULT_MAX_SIZE: usize = 64 * 1024;
/// Absolute maximum document size (1MB)
pub const ABSOLUTE_MAX_SIZE: usize = 1024 * 1024;
/// Check if a file extension is supported