搜索结果:smt(3 个)
按分类缩小范围
cryptol
综合 55
Cryptol 是一种专为密码学算法设计的形式化规范语言及解释器,用 Haskell 编写。它解决了密码学规范难以验证与执行的问题,具备完全可执行性;支持通过随机向量测试算法,并能调用 Z3 等 SMT 求解器进行形式化证明,确保算法的正确性。
liquidhaskell
综合 53
LiquidHaskell 是面向 Haskell 的形式化验证工具。它通过引入细化类型(Refinement Types)并结合 Z3 等 SMT 求解器,帮助开发者对代码逻辑进行严格的形式化验证。它可以作为 GHC 插件直接运行,从而在编译期检查程序性质并发现潜在错误。
squeal
综合 41
Squeal 是一个面向 Haskell 的 PostgreSQL 强类型嵌入库。它把 SQL 语法与模式(Schema)深度映射到 Haskell 类型系统,解决传统字符串 SQL 缺乏编译期校验、易出错的问题。
其核心功能包括:
1. **类型安全**:全面覆盖 DDL、DQL 与 DML,在编译期校验字段、NULL、主外键等约束。
2. **泛型编解码**:基于 `generics-sop` 自动转换 Haskell 记录与 SQL 参数/结果。
3. **完善生态**:支持连接池、事务、迁移及原生 SQL 逃逸机制。