@eagleoutice/flowr - v2.10.1
    Preparing search index...

    Interface Lattice<Value, Top, Bot, Lift>

    A complete lattice with a partially ordered set, join operator (LUB), meet operator (GLB), top element, and bottom element (e.g. for abstract domains).

    interface Lattice<
        Value,
        Top,
        Bot,
        Lift extends Value | Top | Bot = Value | Top | Bot,
    > {
        bottom(): Lattice<Value, Top, Bot, Lift> & Lattice<Value, Top, Bot, Bot>;
        create(value: Value | Top | Bot): this;
        equals(other: this): boolean;
        isBottom(): this is Lattice<Value, Top, Bot, Bot>;
        isTop(): this is Lattice<Value, Top, Bot, Top>;
        isValue(): this is Lattice<Value, Top, Bot, Value>;
        join(other: this): this;
        leq(other: this): boolean;
        meet(other: this): this;
        toJson(): unknown;
        top(): Lattice<Value, Top, Bot, Lift> & Lattice<Value, Top, Bot, Top>;
        toString(): string;
        get value(): Lift;
    }

    Type Parameters

    • Value

      Type of a lattice element representing a value (may exclude Top and Bot)

    • Top

      Type of the Top element (greatest element) of the complete lattice

    • Bot

      Type of the Bottom element (least element) of the complete lattice

    • Lift extends Value | Top | Bot = Value | Top | Bot

      Type of the lattice elements (defaults to Value or Top or Bot)

    Implemented by

    Index

    Accessors

    Methods

    • Checks whether the current abstract value is less than or equal to another abstract value with respect to the partial order of the lattice.

      Parameters

      • other: this

      Returns boolean