SkillAgentSearch skills...

Latticer

The codes reproduce the figures in the paper, "An efficient algorithm for integer lattice reduction." The repo also provides the LaTeX and BibTeX sources required for replicating the paper.

Install / Use

/learn @facebookresearch/Latticer
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

The accompanying software can reproduce all figures in the associated paper, "An efficient algorithm for integer lattice reduction." This repository also provides LaTeX and BibTeX sources for replicating the paper.

The main files in the repository are the following:

tex/paper.pdf PDF version of the paper

tex/paper.tex LaTeX source for the paper

tex/supplement.pdf PDF version of the supplementary materials

tex/supplement.tex LaTeX source for the supplementary materials

tex/shared.tex LaTeX source shared by the paper and supplementary materials

tex/lattice.bib BibTeX source for the paper and supplementary materials

tex/siamplain.bst BibTeX style file

tex/siamart220329.cls LaTeX document class file

codes/graph.sh Shell script that reproduces all figures for the paper when run in codes/.

codes/graph.c ISO C code that graph.sh compiles and runs to generate data for the figures.

codes/graph.py Python script graph.sh runs to reproduce the figs. using the output of graph.c.

Both graph.sh and graph.c are configured for running on the MacOS. The latter depends on BLAS, which is available under the MacOS in Xcode as "Accelerate" (a framework for optimized computations). The compiler used is the alias "gcc" (under Xcode "gcc" points to the Clang LLVM), using optimization level "-O3" by default. Another operating system might require modification to these lines in graph.sh, modifying gcc graph.c -o graph.exe -O3 -framework Accelerate to gcc graph.c -o graph.exe -O3 -lblas -lm (or something similar). Similarly, graph.c includes a preprocessing directive in the early line, #include <Accelerate/Accelerate.h>, which includes the header for BLAS ... whereas most operating systems would need the preprocessing directive, #include <cblas.h>, instead. Both graph.sh and graph.c try to make these modifications automatically, but different systems might require different modifications.


License

This latticer software is licensed under the LICENSE file (the MIT license) in the root directory of this source tree.

Related Skills

View on GitHub
GitHub Stars9
CategoryDevelopment
Updated3mo ago
Forks0

Languages

TeX

Security Score

82/100

Audited on Dec 11, 2025

No findings