% newlattice.sty
% New command file for lattice papers
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{newlattice}[2006/03/15 New commands for lattices v1.2]
\RequirePackage{amsmath}
\RequirePackage{amssymb}
\RequirePackage{latexsym}
\RequirePackage[mathscr]{eucal}
\RequirePackage{enumerate}
\RequirePackage{xspace}
% Lattice operations
\newcommand{\jj}{\vee}% join
\newcommand{\mm}{\wedge}% meet
\newcommand{\JJ}{\bigvee}% big join
\newcommand{\MM}{\bigwedge}% big meet
\newcommand{\JJm}[2]{\JJ(\,#1\mid#2\,)}% big join with a middle
\newcommand{\MMm}[2]{\MM(\,#1\mid#2\,)}% big meet with a middle
% Set operations
\newcommand{\uu}{\cup}% union
\newcommand{\ii}{\cap}% intersection
\newcommand{\UU}{\bigcup}% big union
\newcommand{\II}{\bigcap}% big intersection
\newcommand{\UUm}[2]{\UU(\,#1\mid#2\,)}% big union with a middle
\newcommand{\IIm}[2]{\II(\,#1\mid#2\,)}
% big intersection with a middle
% Sets
\newcommand{\contd}{\subseteq}% contained in
\newcommand{\ncontd}{\nsubseteq}% not \contd
\newcommand{\scontd}{\subset}% strictly contained in
\newcommand{\contg}{\supseteq}% containing with equality
\newcommand{\ncontg}{\nsupseteq}% not \contg
\newcommand{\nin}{\notin}% not \in
\newcommand{\empset}{\varnothing}% the empty set
\newcommand{\set}[1]{\{#1\}}% set
\newcommand{\setm}[2]{\{\,#1\mid#2\,\}}% set with a middle
\def\vect<#1>{\langle#1\rangle}% vector
% Font commands
\newcommand{\tbf}{\textbf}% text bold
\newcommand{\tit}{\textit}% text italic
\newcommand{\tsl}{\textsl}% text slanted
\newcommand{\tsc}{\textsc}% text small cap
\newcommand{\ttt}{\texttt}% text typewriter
\newcommand{\trm}{\textrm}% text roman
\newcommand{\tsf}{\textsf}% text sans serif
\newcommand{\tup}{\textup}% text upright
\newcommand{\mbf}{\mathbf}% math bold
\providecommand{\mit}{\mathit}% math italic
\newcommand{\msf}{\mathsf}% math sans serif
\newcommand{\mrm}{\mathrm}% math roman
\newcommand{\mtt}{\mathtt}% math typewriter
\newcommand{\Bold}[1]{\boldsymbol{#1}}
% Bold math symbol, use as \Bold{\alpha}
\newcommand{\Cal}[1]{\mathcal{#1}}
% Calligraphic - only caps, use as \Cal{A}
\newcommand{\DD}[1]{\mathbb{#1}}
% Doubled - blackboard bold - only caps, use as \DD{A}
\newcommand{\Euler}[1]{\mathscr{#1}}
% Euler Script - only caps, use as \Euler{A}
\newcommand{\Frak}[1]{\mathfrak{#1}}
% Fraktur, use as \Frak{a}
% Generated by
\newcommand{\con}[1]{\tup{con}(#1)}
\newcommand{\sub}[1]{\tup{sub}(#1)}
\newcommand{\id}[1]{\tup{id}(#1)}
\newcommand{\fil}[1]{\tup{f{}il}(#1)}
\newcommand{\Downg}{\downarrow\!}% down-set generated by
% Miscellaneous
\newcommand{\newl}{\newline}
\newcommand{\overl}[1]{\overline{#1}}
\newcommand{\underl}[1]{\underline{#1}}
\providecommand{\bysame}{\makebox[3em]{\hrulefill}\thinspace}
\newcommand{\iso}{\cong}% isomorphic
\def\congr#1=#2(#3){#1\equiv#2\pod{#3}}
%congruence, use it as \congr a=b(\theta)%
\newcommand{\itemref}[1]{\eqref{#1}}
\newenvironment{enumeratei}{\begin{enumerate}[\upshape (i)]}%
{\end{enumerate}}
%produces (i), (ii), etc. Reference with \itemref
\newenvironment{enumeratea}{\begin{enumerate}[\upshape (a)]}%
{\end{enumerate}}
%produces (a), (b), etc. Reference with \itemref
\theoremstyle{plain}
\newtheorem*{namedtheorem}{\theoremname}
\newcommand{\theoremname}{testing}
\newenvironment{named}[1]{\renewcommand{\theoremname}{#1}
\begin{namedtheorem}}
{\end{namedtheorem}}
%use it as \begin{named}{Name of theorem} Body of theorem \end{named}