Opened 5 years ago

Last modified 4 years ago

#21217 new defect

Point lattices (free Z-modules) generated by algebraic real vectors

Reported by: mkoeppe Owned by:
Priority: major Milestone: sage-7.4
Component: linear algebra Keywords:
Cc: tscrim, vdelecroix, novoselt, yzh, dimpase, mmasdeu, jipilab Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description (last modified by mkoeppe)

Point lattices (free Z-modules embedded into an ambient space) can be created as follows:

sage: (QQ^2).span([[1, 6], [1,0]], ZZ)
Free module of degree 2 and rank 2 over Integer Ring
Echelon basis matrix:
[1 0]
[0 6]

(There is also IntegerLattice in sage.modules.free_module_integer.)

However, I can't seem to build a point lattice with algebraic irrational generators, such as the 60-degree lattice in the plane.

sage: (AA^2).span([[1, 0], [1/2, AA(sqrt(3)/2)]], ZZ)
ValueError: Cannot coerce irrational Algebraic Real 0.866025403784439? to Rational
sage: K.<sqrt3> = NumberField(x^2 - 3, 'a', embedding=1.7)
sage: (K^2).span([[1, 0], [1/2, sqrt3/2]], ZZ)
ValueError: Argument gens (= [[1, 0], [1/2, 1/2*sqrt3]]) is not compatible with base_ring (= Integer Ring).

Change History (4)

comment:1 Changed 5 years ago by mkoeppe

  • Cc yzh added

comment:2 Changed 5 years ago by mkoeppe

  • Cc dimpase added
  • Description modified (diff)

comment:3 Changed 5 years ago by mkoeppe

  • Cc mmasdeu added

comment:4 Changed 4 years ago by mkoeppe

  • Cc jipilab added
Note: See TracTickets for help on using tickets.