1DeclareCategory( "IsPoset", IsObject and IsAttributeStoringRep );
2DeclareRepresentation( "IsPosetRep", IsPoset, [ "set", "binary_relation", "minimal_relations", "lessthan" ] );
3DeclareAttribute( "Size", IsPoset );
4DeclareOperation( "Poset", [ IsList, IsList ] );
5DeclareOperation( "UnderlyingSet", [ IsPoset ] );
6DeclareOperation( "PartialOrderOfPoset", [ IsPoset ] );
7BindGlobal( "TheFamilyOfPosets", NewFamily( "TheFamilyOfPosets" ) );
8BindGlobal( "TheTypePoset", NewType( TheFamilyOfPosets, IsPosetRep ) );