Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Factored the material about linear dependence, span and dimension
out of the specific setting of vectors in R^n and set it up as a general theory of "matroids". These don't have all the finiteness assumptions common in matroid theory, but could be considered as "finitary" (matroid span is assumed to have finite character). The setup roughly follows Pete Clark's "Field Theory" notes, 11.4: http://alpha.math.uga.edu/~pete/FieldTheory.pdf Added one more theorem WORD_SUBWORD_DUPLICATE_DUPLICATE relating subwords and duplication, which is also now exploited inside WORD_SIMPLE_SUBWORD_CONV. Slightly refined the improvements to div/rem elimination made recently, to avoid exponential blowups while preserving the ability to deduce nonnegativity of the quotient in "easy" cases. List of new definitions (all connected with matroids) matroid_basis matroid_dim matroid_dimension matroid_finite_dim matroid_finite_dimensional matroid_independent matroid_set matroid_span matroid_spanning matroid_subspace matroid_tybij submatroid and theorems (all about matroids except the last one) FINITE_IMP_MATROID_FINITE_DIM FINITE_IMP_MATROID_FINITE_DIM_SPAN MATROID_BASES_CARD_EQ MATROID_BASES_FINITE MATROID_BASES_SIZE MATROID_BASIS_EQ_MAXIMAL_INDEPENDENT MATROID_BASIS_EQ_MINIMAL_SPANNING MATROID_BASIS_EXISTS MATROID_BASIS_EXISTS_DIM MATROID_BASIS_EXISTS_DIMENSION MATROID_BASIS_IMP_SUBSET MATROID_BASIS_SUBMATROID MATROID_CHOOSE_SUBSET MATROID_CHOOSE_SUBSPACE MATROID_CONTAINS_BASIS_DIM MATROID_DIMENSION_ALT MATROID_DIMENSION_EQ_CARD MATROID_DIMENSION_FINITE_LE MATROID_DIMENSION_GE MATROID_DIMENSION_GE_CARD MATROID_DIMENSION_GE_FINITE_CARD MATROID_DIMENSION_LE MATROID_DIMENSION_UNIQUE MATROID_DIM_ALT MATROID_DIM_BASIS MATROID_DIM_EMPTY MATROID_DIM_EQ_CARD MATROID_DIM_EQ_CARD_GEN MATROID_DIM_EQ_FINITE_CARD_EQ,MATROID_DIM_GE_FINITE_CARD_EQ MATROID_DIM_EQ_SPAN MATROID_DIM_FINITE_LE MATROID_DIM_GE MATROID_DIM_GE_CARD MATROID_DIM_GE_CARD_GEN MATROID_DIM_GE_FINITE_CARD MATROID_DIM_INSERT MATROID_DIM_LE MATROID_DIM_LE_CARD MATROID_DIM_LE_CARD_GEN MATROID_DIM_SET MATROID_DIM_SPAN MATROID_DIM_SPAN_EQ MATROID_DIM_SPAN_EQ_GEN MATROID_DIM_SPAN_PSUBSET MATROID_DIM_SPAN_SUBSET MATROID_DIM_SUBSET MATROID_DIM_SUBSET_ALT MATROID_DIM_UNIQUE MATROID_DIM_UNIQUE_ALT MATROID_EQ_SPANS_CARD_EQ MATROID_EQ_SPANS_FINITE MATROID_EQ_SPANS_SIZE MATROID_FINITE_DIM MATROID_FINITE_DIMENSIONAL MATROID_FINITE_DIMENSIONAL_ANY MATROID_FINITE_DIMENSIONAL_BASIS MATROID_FINITE_DIMENSIONAL_CONTAINS_BASIS MATROID_FINITE_DIMENSIONAL_DIM MATROID_FINITE_DIM_BASIS MATROID_FINITE_DIM_EMPTY MATROID_FINITE_DIM_FINITE MATROID_FINITE_DIM_IMP_SUBSET MATROID_FINITE_DIM_INSERT MATROID_FINITE_DIM_MONO MATROID_FINITE_DIM_SET MATROID_FINITE_DIM_SPAN MATROID_FINITE_DIM_SPAN_EQ MATROID_FINITE_DIM_SUBSET MATROID_FINITE_DIM_UNION MATROID_INDEPENDENT_CARD_LE_SPAN MATROID_INDEPENDENT_CARD_LE_SPANNING MATROID_INDEPENDENT_CARD_LE_SPAN_FINITE MATROID_INDEPENDENT_CHAIN MATROID_INDEPENDENT_EMPTY MATROID_INDEPENDENT_EXTENDS_TO_BASIS MATROID_INDEPENDENT_FINITARY MATROID_INDEPENDENT_IMP_FINITE MATROID_INDEPENDENT_IMP_SUBSET MATROID_INDEPENDENT_INSERT MATROID_INDEPENDENT_MONO MATROID_INDEPENDENT_SPANNING_FINITE MATROID_INDEPENDENT_SUBMATROID MATROID_INTERMEDIATE_BASIS MATROID_INTERMEDIATE_SPAN MATROID_LOWDIM_EXPAND_BASIS MATROID_LOWDIM_EXPAND_DIMENSION MATROID_MAXIMAL_INDEPENDENT_SUBSET_SPAN MATROID_SPANNING_ALT MATROID_SPANNING_CONTAINS_BASIS MATROID_SPANNING_IMP_SUBSET MATROID_SPANNING_PSUBSET_INDEPENDENT MATROID_SPANNING_SET MATROID_SPANNING_SUBMATROID MATROID_SPANNING_SUBMATROID_SELF MATROID_SPANNING_SUBSET_INDEPENDENT MATROID_SPAN_CHAIN MATROID_SPAN_DELETE_EQ MATROID_SPAN_DIM_EQ MATROID_SPAN_EQ MATROID_SPAN_EQ_SELF MATROID_SPAN_EQ_SET MATROID_SPAN_EXCHANGE_DELETE MATROID_SPAN_FINITARY_GEN MATROID_SPAN_FINITARY_MINIMAL MATROID_SPAN_INC MATROID_SPAN_INSERT_EQ MATROID_SPAN_INSERT_REFL MATROID_SPAN_INTER_SPANS MATROID_SPAN_INTER_SUBSET MATROID_SPAN_MINIMAL MATROID_SPAN_MONO MATROID_SPAN_OF_SUBSPACE MATROID_SPAN_PSUBSET_INDEPENDENT MATROID_SPAN_SET MATROID_SPAN_SUBSET MATROID_SPAN_SUBSET_EQ MATROID_SPAN_SUBSET_SUBSPACE MATROID_SPAN_SUBSPACE MATROID_SPAN_SUPERSET MATROID_SPAN_TRANS MATROID_SPAN_UNION_EQ MATROID_SPAN_UNION_SUBSET MATROID_STEINITZ_EXCHANGE MATROID_STEINITZ_EXCHANGE_ALT MATROID_STEINITZ_EXCHANGE_FINITE MATROID_SUBSET_CONTAINS_BASIS MATROID_SUBSPACE MATROID_SUBSPACE_CHAIN MATROID_SUBSPACE_IMP_SUBSET MATROID_SUBSPACE_INTER MATROID_SUBSPACE_INTERS MATROID_SUBSPACE_SET MATROID_SUBSPACE_SPAN SUBMATROID SUBMATROID_GEN SUBMATROID_SET SUBMATROID_SPAN SUBMATROID_SUBSET SUBSET_MATROID_SPAN WORD_SUBWORD_DUPLICATE_DUPLICATE
- Loading branch information