Safe Haskell | Safe |
---|---|
Language | Haskell98 |
- type Disjunction p = Set p
- type Conjunction p = Set (Disjunction p)
- data Ord p => DCLabel p = DCLabel {}
- dcSingleton :: Ord p => p -> DCLabel p
- dcConfidentialitySingleton :: Ord p => p -> DCLabel p
- dcIntegritySingleton :: Ord p => p -> DCLabel p
- forall :: (a -> Bool) -> Set a -> Bool
- exists :: (a -> Bool) -> Set a -> Bool
- subset :: Ord p => Disjunction p -> Disjunction p -> Bool
- implies :: Ord p => Conjunction p -> Conjunction p -> Bool
- conjunctionInsertDisjunction :: Ord p => Conjunction p -> Disjunction p -> Conjunction p
- conjunctionAnd :: Ord p => Conjunction p -> Conjunction p -> Conjunction p
- conjunctionOr :: Ord p => Conjunction p -> Conjunction p -> Conjunction p
Documentation
type Disjunction p = Set p Source #
type Conjunction p = Set (Disjunction p) Source #
data Ord p => DCLabel p Source #
Disjunction category label of principals in conjunction normal form.
dcSingleton :: Ord p => p -> DCLabel p Source #
Convenience function to convert a principal to confidentiality and integrity DCLabel.
dcConfidentialitySingleton :: Ord p => p -> DCLabel p Source #
Convenience function to convert a principal to confidentiality DCLabel.
dcIntegritySingleton :: Ord p => p -> DCLabel p Source #
Convenience function to convert a principal to integrity DCLabel.
subset :: Ord p => Disjunction p -> Disjunction p -> Bool Source #
implies :: Ord p => Conjunction p -> Conjunction p -> Bool Source #
Computes logical implies. Assumes CNF. O(n * m * (n' + m'))
conjunctionInsertDisjunction :: Ord p => Conjunction p -> Disjunction p -> Conjunction p Source #
conjunctionAnd :: Ord p => Conjunction p -> Conjunction p -> Conjunction p Source #
conjunctionOr :: Ord p => Conjunction p -> Conjunction p -> Conjunction p Source #