Changes between Initial Version and Version 3 of Ticket #21002

07/15/16 11:32:17 (6 years ago)

I thinked about this, and here is first part.

First, this is faster for almost all cases. But for small lattices with already computed meet, join and rank function this is slower. However, the speedup for, say, BooleanLattice(10) is big. With current code the time to check semimodularity is 4,9 seconds for first time and 0,6 seconds for second time. With this patch it drops to 0,1 seconds.

Second, this adds a certificate-option.

I thinked this, and I guess we should use this by-definition -certificate, and later implement isomoprhic_sublattices().

I will put this to needs_review and later try to do something similar to is_modular() and is_distributive().

New commits:

10cb3caModifications to semimodularity tests.


  • Ticket #21002

    • Property Status changed from new to needs_review
    • Property Cc kdilks tscrim added
    • Property Summary changed from LatticePoset: certificates for non-[semi]modularity and non-distributivity to LatticePoset: certificates for non-semimodularity
    • Property Branch changed from to u/jmantysalo/latticeposet__certificates_for_non__semi_modularity_and_non_distributivity
    • Property Milestone changed from sage-feature to sage-7.3
    • Property Commit changed from to 10cb3ca6bcfb3d79793200b9f1def5be584a8e46
  • Ticket #21002 – Description

    initial v3  
    1 Add a `certificate`-option to the functions checking if a lattice is semimodular, modular or distributive.
     1Add a `certificate`-option to the functions checking if a lattice is semimodular.