groups_1 Theory

A family of classes is introduced for groups and monoids with discrete, abelian, and ordered variations.

Summation and exponentiation functions are defined that draw indices from integer subranges and basic properties are proved about them.

Note that more general summation functions can be found in the list_2 and mset theories.


Summary of Definitions


Typed Definitions

monoid_p *1
group_p *1
grp_sig *1
grp_car *1
grp_eq *1
grp_le *1
grp_op *1 *6

grp_id *1 *2

grp_inv *1
imon *1
mon *1
iabmonoid *1
abmonoid *1
igrp *1
mk_igrp *5
grp *1
subgrp_p *1
norm_subset_p *1
norm_subgrp *1
eqv_mod_subset *1
iabgrp *1
quot_grp_car ?6
abgrp *1
monoid_hom_p *1
mon_hom_inj_p *1
monoid_hom *1
inj_mon_hom *1
dset_of_mon *1 *6 *2


omon *1
ocmon *1
oset_of_ocmon *1 *5

grp_leq *1
grp_lt *1
grp_blt *1
ocgrp *1
hgrp_car *1
hgrp_of_ocgrp *1 *8

itop *18
nat_op *1
int_op *7
mon_itop *2
mon_nat_op *1 *0 *7


comp_id_mon *13
bor_mon *19
band_mon *19
int_add_grp *9 *9

nat_add_mon *1 *5

mon_when *1
int_hgrp_el *1
int_hgrp_to_nat *1

Main Theorems

sq_stable__monoid_p *1
sq_stable__group_p *1
grp_op_l *2
grp_op_r *2
mk_imon *5
mon_ident *4
mon_assoc *3
mk_mon *4
assert_of_mon_eq *5
decidable__mon_eq *5
grp_eq_sym *3
abmonoid_comm *2
abmonoid_ac_1 *4
mk_abmonoid *5
grp_inverse *2
grp_op_cancel_l *11
grp_op_cancel_r *10
grp_inv_id *5
grp_inv_inv *6
grp_inv_assoc *8
grp_inv_thru_op *7
grp_eq_op_l *3
grp_eq_op_r *3
grp_eq_shift_right *3
grp_inv_diff *1
mk_grp *5
eqv_mod_subset_is_eqv *1
iabgrp_op_inv_assoc *4

sq_stable__monoid_hom_p *1
monoid_hom_id *3
monoid_hom_op *3
grp_hom_formation *4
grp_hom_inv *5
ident_mon_hom_shift *6
inverse_grp_sig_hom_shift *6
mon_hom_p_id *1
mon_hom_p_comp *4
ocmon_refl *1
ocmon_trans *1
ocmon_anti_sym *1
ocmon_connex *1
ocmon_cancel *1
ocmon_6 *1
sq_stable__grp_leq *1
grp_leq_iff_lt_or_eq *2
decidable__grp_lt *2
grp_lt_is_sp_of_leq_a *2
grp_lt_trans *2
grp_lt_irreflexivity *2
grp_lt_transitivity_2 *2
grp_lt_transitivity_1 *2
grp_leq_weakening_eq *2
grp_leq_weakening_lt *2
grp_leq_transitivity *2
omon_lt_mono_imp_leq_mono *7
grp_leq_antisymmetry *2
grp_leq_complement *2
grp_lt_complement *2
grp_lt_trichot *2
grp_op_preserves_le *3
grp_op_preserves_lt *9
grp_leq_op_l *4
grp_lt_op_l *4
grp_op_polarity *4
assert_of_grp_blt *2
ocgrp_inverse *1
grp_lt_shift_right *3
grp_leq_shift_right *3
inj_into_ocmon *22

itop_unroll_base *7
itop_unroll_hi *7
itop_unroll_unit *6
itop_unroll_lo *14
itop_shift *9
itop_split *14
nat_op_zero *3
nat_op_add *8
int_op_minus *12
mon_itop_unroll_base *1
mon_itop_unroll_hi *1
mon_itop_unroll_unit *1
mon_itop_unroll_lo *1
mon_itop_shift *1
mon_itop_split *1
mon_itop_split_el *4
mon_itop_op *8
mon_nat_op_zero *1
mon_nat_op_unroll *4
mon_nat_op_one *4
mon_nat_op_id *9
mon_nat_op_op *10
mon_nat_op_add *1
mon_nat_op_hom_swap *6
mon_nat_op_mul *36
nat_int_grp_sig_hom *2
nat_op_mon_hom_1 *2
nat_op_mon_hom_2 *2
nat_op_on_nat_add_mon *11
mon_when_false *3
mon_when_true *3
mon_when_of_id *6
mon_when_thru_op *4
mon_when_when *6
mon_when_swap *6
mon_when_is_hom *3
mon_when_hom_swap *5
zhgrp_to_nat_is_hom *6
zhgrp_op_mon_hom_1 *5

Listing


Last modified February 24th, 1995

Paul Jackson / jackson@cs.cornell.edu