6
6
InstallGlobalFunction( InfoStringOfInstalledOperationsOfCategory,
7
7
8
8
function ( category )
9
- local list_of_mathematical_properties, list_of_potential_algorithmic_properties,
9
+ local MaximalPropertiesWithRegardToImplication, list_of_mathematical_properties, list_of_potential_algorithmic_properties,
10
10
list_of_algorithmic_properties, list_of_maximal_algorithmic_properties, property, result,
11
11
list_of_non_algorithmic_mathematical_properties, list_of_maximal_non_algorithmic_mathematical_properties;
12
12
@@ -15,15 +15,19 @@ InstallGlobalFunction( InfoStringOfInstalledOperationsOfCategory,
15
15
return ;
16
16
fi ;
17
17
18
+ MaximalPropertiesWithRegardToImplication := function ( list_of_properties )
19
+
20
+ return MaximalObjects( list_of_properties, { p1, p2 } -> p1 in ListImpliedFilters( ValueGlobal( p2 ) ) );
21
+
22
+ end ;
23
+
18
24
list_of_mathematical_properties := ListKnownCategoricalProperties( category );
19
25
20
26
list_of_potential_algorithmic_properties := RecNames( CAP_INTERNAL_CONSTRUCTIVE_CATEGORIES_RECORD );
21
27
22
28
list_of_algorithmic_properties := Filtered( list_of_mathematical_properties, p -> p in list_of_potential_algorithmic_properties and IsEmpty( CheckConstructivenessOfCategory( category, p ) ) );
23
29
24
- list_of_maximal_algorithmic_properties := MaximalObjects( list_of_algorithmic_properties, { p1, p2 } ->
25
- IsSubset( CAP_INTERNAL_CONSTRUCTIVE_CATEGORIES_RECORD.( p2 ), CAP_INTERNAL_CONSTRUCTIVE_CATEGORIES_RECORD.( p1 ) ) or
26
- p1 in ListImpliedFilters( ValueGlobal( p2 ) ) );
30
+ list_of_maximal_algorithmic_properties := MaximalPropertiesWithRegardToImplication( list_of_algorithmic_properties );
27
31
28
32
StableSortBy( list_of_maximal_algorithmic_properties, p -> Length( CAP_INTERNAL_CONSTRUCTIVE_CATEGORIES_RECORD.( p ) ) );
29
33
@@ -41,7 +45,7 @@ InstallGlobalFunction( InfoStringOfInstalledOperationsOfCategory,
41
45
42
46
list_of_non_algorithmic_mathematical_properties := Difference( list_of_mathematical_properties, list_of_algorithmic_properties );
43
47
44
- list_of_maximal_non_algorithmic_mathematical_properties := MaximalObjects ( list_of_non_algorithmic_mathematical_properties, { p1, p2 } -> p1 in ListImpliedFilters( ValueGlobal( p2 ) ) );
48
+ list_of_maximal_non_algorithmic_mathematical_properties := MaximalPropertiesWithRegardToImplication ( list_of_non_algorithmic_mathematical_properties );
45
49
46
50
if not IsEmpty( list_of_maximal_non_algorithmic_mathematical_properties ) then
47
51
if not IsEmpty( list_of_maximal_algorithmic_properties ) then
0 commit comments