acts: Semigroup actions and torsors.

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

Warnings:

Acts and torsors model types which can be transformed under the action of another type.

A prototypical example is affine space, which has an action by translation: given any two points in affine space, there is a unique translation that brings one to the other.

This can be useful in a library keeping track of time: on top of needing to keep track of units, one also needs to distinguish between absolute time (time stamps) and relative time (time differences). The operations one expects in this situation are:

This library provides a convenient framework which helps to avoid mixing up these two different notions.

A fleshed out example is available at Acts.Examples.MusicalIntervals, which showcases the use of actions and torsors in the context of musical intervals and harmony. It also demonstrates common usage patterns of this library, such as how to automatically derive instances.

See also the project readme, which includes a simple example with 2D affine space.

Properties

Versions 0.1.0.0, 0.2.0.0, 0.3.0.0, 0.3.1.0, 0.3.1.0
Change log changelog.md
Dependencies acts, base (>=4.12 && <4.15), deepseq (>=1.4.4.0 && <1.5), finitary (>=1.2.0.0 && <1.3), finite-typelits (>=0.1.4.2 && <0.2), groups (>=0.4.0.0 && <0.5) [details]
License BSD-3-Clause
Author Sam Derbyshire
Maintainer Sam Derbyshire
Category Algebra, Math
Home page https://github.com/sheaf/acts
Bug tracker https://github.com/sheaf/acts/issues
Source repo head: git clone git://github.com/sheaf/acts.git
Uploaded by sheaf at 2020-02-23T01:33:53Z

Modules

[Index]

Manual Flags

NameDescriptionDefault
Automatic Flags
NameDescriptionDefault
finitary

Use the finitary library to define actions on finite enumerations.

Disable to remove dependencies on `finite-typelits` and finitary.

Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

For package maintainers and hackage trustees