package mopsa
Install
Dune Dependency
Authors
Maintainers
Sources
md5=fdee20e988343751de440b4f6b67c0f4
sha512=f5cbf1328785d3f5ce40155dada2d95e5de5cce4f084ea30cfb04d1ab10cc9403a26cfb3fa55d0f9da72244482130fdb89c286a9aed0d640bba46b7c00e09500
doc/bitfields/Bitfields/IntBitfields/index.html
Module Bitfields.IntBitfields
Source
Bitfields - Sequences of bits that can be set, cleared, or unknown
We rely on Zarith for arithmetic operations.
Types
cleared
The type of possibly empty bitfields.
module I = ItvUtils.IntItv
module B = ItvUtils.IntBound
module C = CongUtils.IntCong
Constructors
Bitfield enclosing the range lo,hi
.
Bitfield enclosing the range lo,hi
.
Bitfield enclosing the range lo,hi
. Fails with invalid_arg
if the range is empty.
Bitfield enclosing the range lo,hi
. Fails with invalid_arg
if the range is empty.
Predicates
A total ordering on bitfields, returning -1, 0, or 1. Can be used as compare for sets, maps, etc.
Total ordering on possibly empty bitfields.
Printing
Enumeration
List of elements, in increasing order. Raises an invalid argument if it is unbounded.
Set operations
Abstract intersection.
Forward operations
Conversion from integer to boolean in 0,1
: maps 0 to 0 (false) and non-zero to 1 (true).
Logical negation. Logical operation use the C semantics: they accept 0 and non-0 respectively as false and true, but they always return 0 and 1 respectively for false and true.
C comparison tests. Returns an interval included in 0,1
(a boolean)
C comparison tests. Returns a boolean if the test may succeed
Unsigned bitshift right: division by a power of 2 with truncation.
Filters
Given two interval aruments, return the arguments assuming that the predicate holds.