Kure is a C library which provides manipulation of relations and operations of relation algebra using a fast implementation using binary decision diagram. It provides a Lua based domain-specific embedded programming language to conveniently manipulate and work with relations. For instance, given relations R, S, the tupling of them can be computed using [R,S] and they can be composed using R*S.
- Representation and manipulation of arbitrary large relations, e.g. 2^100 x 2^100.
- Relational constants: All, null, identity.
- Special relations: Membership, partial and total functions, successors, domain.
- Basic functions: Join, meet, composition, complement, transpose.
- Comparison of relations and comparison of relations by cardinality.
- Reflexive, symmetric and transitive closures.
- Left and right residue and symmetric quotient.
- Direct sum, tupling, product order and sum order.
- Domains for binary direct products and direct sums including projection functions.
- Fully scriptable and extensible using Lua.
- Domain-specific embedded programming language for high level scripting.
- Written in C using POSIX.
Be the first to post a review of Kiel University Relation package!