Copyright | (c) Erich Gut |
---|---|
License | BSD3 |
Maintainer | zerich.gut@gmail.com |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Synopsis
- newtype ZMod = ZMod N
- zmOrd :: ZMod -> N
- data ZModHom
- toZ :: ZModHom -> Z
- fromZ :: Z -> ZModHom
- zmh :: Orientation ZMod -> Z -> ZModHom
- zmhEligible :: ZMod -> ZMod -> Z -> Bool
- zmhGenOrd :: Orientation ZMod -> (ZModHom, N)
- zmhGenerator :: Orientation ZMod -> ZModHom
- xZModHom :: X Z -> Orientation ZMod -> X ZModHom
- xZModHomTo :: N -> X Z -> X ZMod -> XOrtSite To ZModHom
- xZModHomFrom :: N -> X Z -> X ZMod -> XOrtSite From ZModHom
- xZModTo :: N -> ZMod -> X ZMod
- xZModFrom :: N -> ZMod -> X ZMod
- prpZModHom :: Statement
- data ZModException = NotEligible String
Cyclic Group
Homomorphism
additive homomorphisms between cyclic groups ZMod
constructable via zmh
.
Note The homomorphisms between two cyclic groups a
and b
form again a cyclic
group which will be denoted by
(see ZModHom
(a:>
b)zmhGenOrd
).
Instances
Show ZModHom Source # | |
Eq ZModHom Source # | |
Ord ZModHom Source # | |
Validable ZModHom Source # | |
Defined in OAlg.AbelianGroup.ZMod | |
Entity ZModHom Source # | |
Defined in OAlg.AbelianGroup.ZMod | |
Abelian ZModHom Source # | |
Additive ZModHom Source # | |
Algebraic ZModHom Source # | |
Defined in OAlg.AbelianGroup.ZMod | |
Distributive ZModHom Source # | |
Defined in OAlg.AbelianGroup.ZMod | |
Fibred ZModHom Source # | |
FibredOriented ZModHom Source # | |
Defined in OAlg.AbelianGroup.ZMod | |
Commutative ZModHom Source # | |
Defined in OAlg.AbelianGroup.ZMod | |
Invertible ZModHom Source # | |
Multiplicative ZModHom Source # | |
Oriented ZModHom Source # | |
Vectorial ZModHom Source # | |
XStandardOrtSite 'From ZModHom Source # | |
Defined in OAlg.AbelianGroup.ZMod | |
XStandardOrtSite 'To ZModHom Source # | |
Defined in OAlg.AbelianGroup.ZMod | |
type Root ZModHom Source # | |
Defined in OAlg.AbelianGroup.ZMod | |
type Point ZModHom Source # | |
Defined in OAlg.AbelianGroup.ZMod | |
type Scalar ZModHom Source # | |
Defined in OAlg.AbelianGroup.ZMod |
zmh :: Orientation ZMod -> Z -> ZModHom Source #
the induced homomorphism.
Property Let a
, b
be in ZMod
and r
in Z
then holds:
iszmh
a b rvalid
if and only if
is true.zmhEligible
a b r- If
is false then the evaluation ofzmhEligible
a b r
will end up by throwing azmh
a b rNotEligible
-exception.
zmhGenerator :: Orientation ZMod -> ZModHom Source #
X
Since the algebraic structure of ZModHom
is not balanced - which means that
between any two cyclic groups there may be no nontrivial homomorphisms - it is
appropriate to work with XOrtSite
instead of XOrtOrientation
for
random variables with values in ZModHom
.
xZModHom :: X Z -> Orientation ZMod -> X ZModHom Source #
random variable for homomorphisms for the given orientation of ZMod
.
xZModHomTo :: N -> X Z -> X ZMod -> XOrtSite To ZModHom Source #
random variable for homomorphisms based on xZModTo
.
xZModHomFrom :: N -> X Z -> X ZMod -> XOrtSite From ZModHom Source #
random variable for homomorphisms based on xZModFrom
.
xZModTo :: N -> ZMod -> X ZMod Source #
random variable of cyclic groups admitting nontrivial homomorphisms to the given group.
xZModFrom :: N -> ZMod -> X ZMod Source #
random variable of cyclic groups admitting non trivial homomorphisms from the given one.
Proposition
Exception
data ZModException Source #
exceptions for cyclic groups which are sub exceptions from SomeOAlgException
.
Instances
Exception ZModException Source # | |
Defined in OAlg.AbelianGroup.ZMod | |
Show ZModException Source # | |
Defined in OAlg.AbelianGroup.ZMod showsPrec :: Int -> ZModException -> ShowS # show :: ZModException -> String # showList :: [ZModException] -> ShowS # | |
Eq ZModException Source # | |
Defined in OAlg.AbelianGroup.ZMod (==) :: ZModException -> ZModException -> Bool # (/=) :: ZModException -> ZModException -> Bool # |