manyvalued
Safe HaskellNone
LanguageGHC2024

Circuit.Logics.Goedel

Description

Gödel–Dummett fuzzy logic on an ordered unit interval.

Meetjoin are minmax; implication is the standard Gödel rule. Heyting but not Boolean: excluded middle fails for intermediate degrees.

Synopsis

Documentation

newtype Goedel r Source #

Gödel truth degree, intended in [0,1].

The constructor is strict about bounds via mkGoedel; the newtype is still exposed for zero-cost unwrapping when the invariant is trusted.

Constructors

Goedel r 

Instances

Instances details
Eq r => Eq (Goedel r) Source # 
Instance details

Defined in Circuit.Logics.Goedel

Methods

(==) :: Goedel r -> Goedel r -> Bool #

(/=) :: Goedel r -> Goedel r -> Bool #

Ord r => Ord (Goedel r) Source # 
Instance details

Defined in Circuit.Logics.Goedel

Methods

compare :: Goedel r -> Goedel r -> Ordering #

(<) :: Goedel r -> Goedel r -> Bool #

(<=) :: Goedel r -> Goedel r -> Bool #

(>) :: Goedel r -> Goedel r -> Bool #

(>=) :: Goedel r -> Goedel r -> Bool #

max :: Goedel r -> Goedel r -> Goedel r #

min :: Goedel r -> Goedel r -> Goedel r #

Read r => Read (Goedel r) Source # 
Instance details

Defined in Circuit.Logics.Goedel

Show r => Show (Goedel r) Source # 
Instance details

Defined in Circuit.Logics.Goedel

Methods

showsPrec :: Int -> Goedel r -> ShowS #

show :: Goedel r -> String #

showList :: [Goedel r] -> ShowS #

(Ord r, Num r) => Complemented (Goedel r) Source #

Gödel negation as a ==> bottom (sharp: only 0 maps to 1).

Instance details

Defined in Circuit.Logics.Goedel

Methods

complement :: Goedel r -> Goedel r Source #

(Ord r, Num r) => Heyting (Goedel r) Source # 
Instance details

Defined in Circuit.Logics.Goedel

Methods

(==>) :: Goedel r -> Goedel r -> Goedel r Source #

Ord r => JoinSemiLattice (Goedel r) Source # 
Instance details

Defined in Circuit.Logics.Goedel

Methods

(\/) :: Goedel r -> Goedel r -> Goedel r Source #

(Ord r, Num r) => LowerBounded (Goedel r) Source # 
Instance details

Defined in Circuit.Logics.Goedel

Methods

bottom :: Goedel r Source #

Ord r => MeetSemiLattice (Goedel r) Source # 
Instance details

Defined in Circuit.Logics.Goedel

Methods

(/\) :: Goedel r -> Goedel r -> Goedel r Source #

(Ord r, Num r) => UpperBounded (Goedel r) Source # 
Instance details

Defined in Circuit.Logics.Goedel

Methods

top :: Goedel r Source #

mkGoedel :: (Ord r, Num r) => r -> Goedel r Source #

Clamp to the unit interval and wrap.

godei :: Rational -> Goedel Rational Source #

Alias matching common spelling in the literature.