Skip to content

kalmarek/GroupsCore.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GroupsCore

Stable Dev codecov Build Status


The aim of this package is to standardize common assumptions on and functions for groups and monoids, i.e. to create Group/Monoid interface. Packages using it include:

The Oscar.jl project no longer supports GroupsCore.jl interface at version 0.5.

Examples and Conformance testing

For an implemented interface please have a look at /test folder, where several example implementations are tested against the conformance test suite:

To test the conformance of a group implementation one can run

using GroupsCore
include(joinpath(pathof(GroupsCore), "..", "..", "test", "conformance_test.jl"))
include("my_fancy_group.jl") # the implementation of MyFancyGroup
let G = MyFancyGroup(...)
    test_GroupsCore_interface(G)
    # optionally if particular two group elements are to be tested:
    # g,h = rand(G, 2)
    # test_GroupsCore_interface(g, h)
    nothing
end