rings-0.0.3: Ring-like objects.
Data.Algebra.Dual
type D = Dual Source #
data Dual a Source #
A dual number.
Constructors
Defined in Data.Algebra.Dual
Methods
fmap :: (a -> b) -> Dual a -> Dual b #
(<$) :: a -> Dual b -> Dual a #
pure :: a -> Dual a #
(<*>) :: Dual (a -> b) -> Dual a -> Dual b #
liftA2 :: (a -> b -> c) -> Dual a -> Dual b -> Dual c #
(*>) :: Dual a -> Dual b -> Dual b #
(<*) :: Dual a -> Dual b -> Dual a #
fold :: Monoid m => Dual m -> m #
foldMap :: Monoid m => (a -> m) -> Dual a -> m #
foldr :: (a -> b -> b) -> b -> Dual a -> b #
foldr' :: (a -> b -> b) -> b -> Dual a -> b #
foldl :: (b -> a -> b) -> b -> Dual a -> b #
foldl' :: (b -> a -> b) -> b -> Dual a -> b #
foldr1 :: (a -> a -> a) -> Dual a -> a #
foldl1 :: (a -> a -> a) -> Dual a -> a #
toList :: Dual a -> [a] #
null :: Dual a -> Bool #
length :: Dual a -> Int #
elem :: Eq a => a -> Dual a -> Bool #
maximum :: Ord a => Dual a -> a #
minimum :: Ord a => Dual a -> a #
sum :: Num a => Dual a -> a #
product :: Num a => Dual a -> a #
traverse :: Applicative f => (a -> f b) -> Dual a -> f (Dual b) #
sequenceA :: Applicative f => Dual (f a) -> f (Dual a) #
mapM :: Monad m => (a -> m b) -> Dual a -> m (Dual b) #
sequence :: Monad m => Dual (m a) -> m (Dual a) #
distribute :: Functor f => f (Dual a) -> Dual (f a) #
collect :: Functor f => (a -> Dual b) -> f a -> Dual (f b) #
distributeM :: Monad m => m (Dual a) -> Dual (m a) #
collectM :: Monad m => (a -> Dual b) -> m a -> Dual (m b) #
Associated Types
type Rep Dual :: Type #
tabulate :: (Rep Dual -> a) -> Dual a #
index :: Dual a -> Rep Dual -> a #
liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Dual a -> ShowS #
liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Dual a] -> ShowS #
fold1 :: Semigroup m => Dual m -> m #
foldMap1 :: Semigroup m => (a -> m) -> Dual a -> m #
toNonEmpty :: Dual a -> NonEmpty a #
discale :: a -> a -> Dual a -> Dual a Source #
rscale :: a -> Dual a -> Dual a Source #
lscale :: a -> Dual a -> Dual a Source #
(==) :: Dual a -> Dual a -> Bool #
(/=) :: Dual a -> Dual a -> Bool #
showsPrec :: Int -> Dual a -> ShowS #
show :: Dual a -> String #
showList :: [Dual a] -> ShowS #
(<>) :: Additive (Dual a) -> Additive (Dual a) -> Additive (Dual a) #
sconcat :: NonEmpty (Additive (Dual a)) -> Additive (Dual a) #
stimes :: Integral b => b -> Additive (Dual a) -> Additive (Dual a) #
mempty :: Additive (Dual a) #
mappend :: Additive (Dual a) -> Additive (Dual a) -> Additive (Dual a) #
mconcat :: [Additive (Dual a)] -> Additive (Dual a) #
inv :: Additive (Dual a) -> Additive (Dual a) #
greplicate :: Integer -> Additive (Dual a) -> Additive (Dual a) #
lempty :: Additive (Dual a) #
lreplicate :: Natural -> Additive (Dual a) -> Additive (Dual a) #
(//) :: Additive (Dual a) -> Additive (Dual a) -> Additive (Dual a) #
(\\) :: Additive (Dual a) -> Additive (Dual a) -> Additive (Dual a) #
(<<) :: Additive (Dual a) -> Additive (Dual a) -> Additive (Dual a) #