- data RngRing r = RngRing !Integer r
- rngRingHom :: r -> RngRing r
- liftRngHom :: Ring s => (r -> s) -> RngRing r -> s

# Documentation

The free Ring given a Rng obtained by adjoining Z, such that

RngRing r = n*1 + r

This ring is commonly denoted r^.

(Abelian r, AdditiveGroup r) => RightModule Integer (RngRing r) | |

(Abelian r, AdditiveMonoid r) => RightModule Natural (RngRing r) | |

(Abelian r, AdditiveGroup r) => LeftModule Integer (RngRing r) | |

(Abelian r, AdditiveMonoid r) => LeftModule Natural (RngRing r) | |

Read r => Read (RngRing r) | |

Show r => Show (RngRing r) | |

Abelian r => Additive (RngRing r) | |

Abelian r => Abelian (RngRing r) | |

Rng r => Semiring (RngRing r) | |

Rng r => Multiplicative (RngRing r) | |

Rng r => Unital (RngRing r) | |

(Rng r, MultiplicativeGroup r) => MultiplicativeGroup (RngRing r) | |

(Commutative r, Rng r) => Commutative (RngRing r) | |

(Abelian r, AdditiveMonoid r) => AdditiveMonoid (RngRing r) | |

Rng r => Rig (RngRing r) | |

(Abelian r, AdditiveGroup r) => AdditiveGroup (RngRing r) | |

Rng r => Rng (RngRing r) | |

Rng r => Ring (RngRing r) | |

Rng s => RightModule (RngRing s) (RngRing s) | |

Rng s => LeftModule (RngRing s) (RngRing s) |

rngRingHom :: r -> RngRing rSource

The rng homomorphism from r to RngRing r

liftRngHom :: Ring s => (r -> s) -> RngRing r -> sSource

given a rng homomorphism from a rng r into a ring s, liftRngHom yields a ring homomorphism from the ring `r^` into `s`

.