\documentclass[12pt,titlepage]{article} \usepackage{amsmath} \usepackage{mathrsfs} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsthm} \usepackage{mathtools} \usepackage{graphicx} \usepackage{color} \usepackage{ucs} \usepackage[utf8x]{inputenc} \usepackage{xparse} \usepackage{hyperref} %----Macros---------- % % Unresolved issues: % % \righttoleftarrow % \lefttorightarrow % % \color{} with HTML colorspec % \bgcolor % \array with options (without options, it's equivalent to the matrix environment) % Of the standard HTML named colors, white, black, red, green, blue and yellow % are predefined in the color package. Here are the rest. \definecolor{aqua}{rgb}{0, 1.0, 1.0} \definecolor{fuschia}{rgb}{1.0, 0, 1.0} \definecolor{gray}{rgb}{0.502, 0.502, 0.502} \definecolor{lime}{rgb}{0, 1.0, 0} \definecolor{maroon}{rgb}{0.502, 0, 0} \definecolor{navy}{rgb}{0, 0, 0.502} \definecolor{olive}{rgb}{0.502, 0.502, 0} \definecolor{purple}{rgb}{0.502, 0, 0.502} \definecolor{silver}{rgb}{0.753, 0.753, 0.753} \definecolor{teal}{rgb}{0, 0.502, 0.502} % Because of conflicts, \space and \mathop are converted to % \itexspace and \operatorname during preprocessing. % itex: \space{ht}{dp}{wd} % % Height and baseline depth measurements are in units of tenths of an ex while % the width is measured in tenths of an em. \makeatletter \newdimen\itex@wd% \newdimen\itex@dp% \newdimen\itex@thd% \def\itexspace#1#2#3{\itex@wd=#3em% \itex@wd=0.1\itex@wd% \itex@dp=#2ex% \itex@dp=0.1\itex@dp% \itex@thd=#1ex% \itex@thd=0.1\itex@thd% \advance\itex@thd\the\itex@dp% \makebox[\the\itex@wd]{\rule[-\the\itex@dp]{0cm}{\the\itex@thd}}} \makeatother % \tensor and \multiscript \makeatletter \newif\if@sup \newtoks\@sups \def\append@sup#1{\edef\act{\noexpand\@sups={\the\@sups #1}}\act}% \def\reset@sup{\@supfalse\@sups={}}% \def\mk@scripts#1#2{\if #2/ \if@sup ^{\the\@sups}\fi \else% \ifx #1_ \if@sup ^{\the\@sups}\reset@sup \fi {}_{#2}% \else \append@sup#2 \@suptrue \fi% \expandafter\mk@scripts\fi} \def\tensor#1#2{\reset@sup#1\mk@scripts#2_/} \def\multiscripts#1#2#3{\reset@sup{}\mk@scripts#1_/#2% \reset@sup\mk@scripts#3_/} \makeatother % \slash \makeatletter \newbox\slashbox \setbox\slashbox=\hbox{$/$} \def\itex@pslash#1{\setbox\@tempboxa=\hbox{$#1$} \@tempdima=0.5\wd\slashbox \advance\@tempdima 0.5\wd\@tempboxa \copy\slashbox \kern-\@tempdima \box\@tempboxa} \def\slash{\protect\itex@pslash} \makeatother % math-mode versions of \rlap, etc % from Alexander Perlis, "A complement to \smash, \llap, and lap" % http://math.arizona.edu/~aprl/publications/mathclap/ \def\clap#1{\hbox to 0pt{\hss#1\hss}} \def\mathllap{\mathpalette\mathllapinternal} \def\mathrlap{\mathpalette\mathrlapinternal} \def\mathclap{\mathpalette\mathclapinternal} \def\mathllapinternal#1#2{\llap{$\mathsurround=0pt#1{#2}$}} \def\mathrlapinternal#1#2{\rlap{$\mathsurround=0pt#1{#2}$}} \def\mathclapinternal#1#2{\clap{$\mathsurround=0pt#1{#2}$}} % Renames \sqrt as \oldsqrt and redefine root to result in \sqrt[#1]{#2} \let\oldroot\root \def\root#1#2{\oldroot #1 \of{#2}} \renewcommand{\sqrt}[2][]{\oldroot #1 \of{#2}} % Manually declare the txfonts symbolsC font \DeclareSymbolFont{symbolsC}{U}{txsyc}{m}{n} \SetSymbolFont{symbolsC}{bold}{U}{txsyc}{bx}{n} \DeclareFontSubstitution{U}{txsyc}{m}{n} % Manually declare the stmaryrd font \DeclareSymbolFont{stmry}{U}{stmry}{m}{n} \SetSymbolFont{stmry}{bold}{U}{stmry}{b}{n} % Manually declare the MnSymbolE font \DeclareFontFamily{OMX}{MnSymbolE}{} \DeclareSymbolFont{mnomx}{OMX}{MnSymbolE}{m}{n} \SetSymbolFont{mnomx}{bold}{OMX}{MnSymbolE}{b}{n} \DeclareFontShape{OMX}{MnSymbolE}{m}{n}{ <-6> MnSymbolE5 <6-7> MnSymbolE6 <7-8> MnSymbolE7 <8-9> MnSymbolE8 <9-10> MnSymbolE9 <10-12> MnSymbolE10 <12-> MnSymbolE12}{} % Declare specific arrows from txfonts without loading the full package \makeatletter \def\re@DeclareMathSymbol#1#2#3#4{% \let#1=\undefined \DeclareMathSymbol{#1}{#2}{#3}{#4}} \re@DeclareMathSymbol{\neArrow}{\mathrel}{symbolsC}{116} \re@DeclareMathSymbol{\neArr}{\mathrel}{symbolsC}{116} \re@DeclareMathSymbol{\seArrow}{\mathrel}{symbolsC}{117} \re@DeclareMathSymbol{\seArr}{\mathrel}{symbolsC}{117} \re@DeclareMathSymbol{\nwArrow}{\mathrel}{symbolsC}{118} \re@DeclareMathSymbol{\nwArr}{\mathrel}{symbolsC}{118} \re@DeclareMathSymbol{\swArrow}{\mathrel}{symbolsC}{119} \re@DeclareMathSymbol{\swArr}{\mathrel}{symbolsC}{119} \re@DeclareMathSymbol{\nequiv}{\mathrel}{symbolsC}{46} \re@DeclareMathSymbol{\Perp}{\mathrel}{symbolsC}{121} \re@DeclareMathSymbol{\Vbar}{\mathrel}{symbolsC}{121} \re@DeclareMathSymbol{\sslash}{\mathrel}{stmry}{12} \re@DeclareMathSymbol{\bigsqcap}{\mathop}{stmry}{"64} \re@DeclareMathSymbol{\biginterleave}{\mathop}{stmry}{"6} \re@DeclareMathSymbol{\invamp}{\mathrel}{symbolsC}{77} \re@DeclareMathSymbol{\parr}{\mathrel}{symbolsC}{77} \makeatother % \llangle, \rrangle, \lmoustache and \rmoustache from MnSymbolE \makeatletter \def\Decl@Mn@Delim#1#2#3#4{% \if\relax\noexpand#1% \let#1\undefined \fi \DeclareMathDelimiter{#1}{#2}{#3}{#4}{#3}{#4}} \def\Decl@Mn@Open#1#2#3{\Decl@Mn@Delim{#1}{\mathopen}{#2}{#3}} \def\Decl@Mn@Close#1#2#3{\Decl@Mn@Delim{#1}{\mathclose}{#2}{#3}} \Decl@Mn@Open{\llangle}{mnomx}{'164} \Decl@Mn@Close{\rrangle}{mnomx}{'171} \Decl@Mn@Open{\lmoustache}{mnomx}{'245} \Decl@Mn@Close{\rmoustache}{mnomx}{'244} \makeatother % Widecheck \makeatletter \DeclareRobustCommand\widecheck[1]{{\mathpalette\@widecheck{#1}}} \def\@widecheck#1#2{% \setbox\z@\hbox{\m@th$#1#2$}% \setbox\tw@\hbox{\m@th$#1% \widehat{% \vrule\@width\z@\@height\ht\z@ \vrule\@height\z@\@width\wd\z@}$}% \dp\tw@-\ht\z@ \@tempdima\ht\z@ \advance\@tempdima2\ht\tw@ \divide\@tempdima\thr@@ \setbox\tw@\hbox{% \raise\@tempdima\hbox{\scalebox{1}[-1]{\lower\@tempdima\box \tw@}}}% {\ooalign{\box\tw@ \cr \box\z@}}} \makeatother % \mathraisebox{voffset}[height][depth]{something} \makeatletter \NewDocumentCommand\mathraisebox{moom}{% \IfNoValueTF{#2}{\def\@temp##1##2{\raisebox{#1}{$\m@th##1##2$}}}{% \IfNoValueTF{#3}{\def\@temp##1##2{\raisebox{#1}[#2]{$\m@th##1##2$}}% }{\def\@temp##1##2{\raisebox{#1}[#2][#3]{$\m@th##1##2$}}}}% \mathpalette\@temp{#4}} \makeatletter % udots (taken from yhmath) \makeatletter \def\udots{\mathinner{\mkern2mu\raise\p@\hbox{.} \mkern2mu\raise4\p@\hbox{.}\mkern1mu \raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern1mu}} \makeatother %% Fix array \newcommand{\itexarray}[1]{\begin{matrix}#1\end{matrix}} %% \itexnum is a noop \newcommand{\itexnum}[1]{#1} %% Renaming existing commands \newcommand{\underoverset}[3]{\underset{#1}{\overset{#2}{#3}}} \newcommand{\widevec}{\overrightarrow} \newcommand{\darr}{\downarrow} \newcommand{\nearr}{\nearrow} \newcommand{\nwarr}{\nwarrow} \newcommand{\searr}{\searrow} \newcommand{\swarr}{\swarrow} \newcommand{\curvearrowbotright}{\curvearrowright} \newcommand{\uparr}{\uparrow} \newcommand{\downuparrow}{\updownarrow} \newcommand{\duparr}{\updownarrow} \newcommand{\updarr}{\updownarrow} \newcommand{\gt}{>} \newcommand{\lt}{<} \newcommand{\map}{\mapsto} \newcommand{\embedsin}{\hookrightarrow} \newcommand{\Alpha}{A} \newcommand{\Beta}{B} \newcommand{\Zeta}{Z} \newcommand{\Eta}{H} \newcommand{\Iota}{I} \newcommand{\Kappa}{K} \newcommand{\Mu}{M} \newcommand{\Nu}{N} \newcommand{\Rho}{P} \newcommand{\Tau}{T} \newcommand{\Upsi}{\Upsilon} \newcommand{\omicron}{o} \newcommand{\lang}{\langle} \newcommand{\rang}{\rangle} \newcommand{\Union}{\bigcup} \newcommand{\Intersection}{\bigcap} \newcommand{\Oplus}{\bigoplus} \newcommand{\Otimes}{\bigotimes} \newcommand{\Wedge}{\bigwedge} \newcommand{\Vee}{\bigvee} \newcommand{\coproduct}{\coprod} \newcommand{\product}{\prod} \newcommand{\closure}{\overline} \newcommand{\integral}{\int} \newcommand{\doubleintegral}{\iint} \newcommand{\tripleintegral}{\iiint} \newcommand{\quadrupleintegral}{\iiiint} \newcommand{\conint}{\oint} \newcommand{\contourintegral}{\oint} \newcommand{\infinity}{\infty} \newcommand{\bottom}{\bot} \newcommand{\minusb}{\boxminus} \newcommand{\plusb}{\boxplus} \newcommand{\timesb}{\boxtimes} \newcommand{\intersection}{\cap} \newcommand{\union}{\cup} \newcommand{\Del}{\nabla} \newcommand{\odash}{\circleddash} \newcommand{\negspace}{\!} \newcommand{\widebar}{\overline} \newcommand{\textsize}{\normalsize} \renewcommand{\scriptsize}{\scriptstyle} \newcommand{\scriptscriptsize}{\scriptscriptstyle} \newcommand{\mathfr}{\mathfrak} \newcommand{\statusline}[2]{#2} \newcommand{\tooltip}[2]{#2} \newcommand{\toggle}[2]{#2} % Theorem Environments \theoremstyle{plain} \newtheorem{theorem}{Theorem} \newtheorem{lemma}{Lemma} \newtheorem{prop}{Proposition} \newtheorem{cor}{Corollary} \newtheorem*{utheorem}{Theorem} \newtheorem*{ulemma}{Lemma} \newtheorem*{uprop}{Proposition} \newtheorem*{ucor}{Corollary} \theoremstyle{definition} \newtheorem{defn}{Definition} \newtheorem{example}{Example} \newtheorem*{udefn}{Definition} \newtheorem*{uexample}{Example} \theoremstyle{remark} \newtheorem{remark}{Remark} \newtheorem{note}{Note} \newtheorem*{uremark}{Remark} \newtheorem*{unote}{Note} %------------------------------------------------------------------- \begin{document} %------------------------------------------------------------------- \section*{lax monoidal category} \hypertarget{lax_monoidal_categories}{}\section*{{Lax monoidal categories}}\label{lax_monoidal_categories} \noindent\hyperlink{idea}{Idea}\dotfill \pageref*{idea} \linebreak \noindent\hyperlink{overview_of_variations}{Overview of variations}\dotfill \pageref*{overview_of_variations} \linebreak \noindent\hyperlink{definitions}{Definitions}\dotfill \pageref*{definitions} \linebreak \noindent\hyperlink{related_notions}{Related notions}\dotfill \pageref*{related_notions} \linebreak \hypertarget{idea}{}\subsection*{{Idea}}\label{idea} A \emph{lax monoidal category} is a [[monoidal category]] in which the associativity and isomorphisms are replaced by not-necessarily-invertible transformations. An \emph{oplax monoidal category} is similar except that the transformations go in the other direction. \hypertarget{overview_of_variations}{}\subsection*{{Overview of variations}}\label{overview_of_variations} For ordinary monoidal categories, the [[biased]] and unbiased definitions coincide up to equivalence (though this is a nontrivial coherence theorem), but in the lax and oplax cases this is no longer true. Moreover, in the biased cases we can make independent choices of the directions of various of the morphisms. This yields the following variations (in all cases we omit the coherence axioms for now): \begin{itemize}% \item An \textbf{unbiased lax monoidal category} has $n$-ary tensor products $(a_1\otimes \cdots\otimes a_n)$ for all $n\ge 0$, including a 0-ary unit $I = ()$, and generalized associativity maps such as \begin{displaymath} ((a\otimes b\otimes c) \otimes () \otimes (d\otimes e)) \to (a\otimes b\otimes c\otimes d\otimes e) \end{displaymath} and a unit map $a\to (a)$. It is \textbf{(strictly) normal} if the later is an isomorphism (identity). It is a special case of a [[lax algebra for a 2-monad]]. \item Dually, an \textbf{unbiased oplax monoidal category} has generalized associativity maps in the opposite direction \begin{displaymath} (a\otimes b\otimes c\otimes d\otimes e) \to ((a\otimes b\otimes c) \otimes () \otimes (d\otimes e)) \end{displaymath} and a unit map $(a) \to a$. It is a special case of an oplax algebra for a 2-monad. \item A \textbf{right-biased lax monoidal category} has a binary tensor product $a\otimes b$, a unit $I$, and constraints \begin{displaymath} a \otimes (b\otimes c) \to (a\otimes b)\otimes c \qquad I \otimes a\to a \qquad a\otimes I\to a. \end{displaymath} \item A \textbf{left-biased lax monoidal category} has a binary tensor product $a\otimes b$, a unit $I$, and constraints \begin{displaymath} (a\otimes b)\otimes c\to a \otimes (b\otimes c) \qquad I \otimes a\to a \qquad a\otimes I\to a. \end{displaymath} \item A \textbf{right-biased oplax monoidal category} has a binary tensor product $a\otimes b$, a unit $I$, and constraints \begin{displaymath} a \otimes (b\otimes c) \to (a\otimes b)\otimes c \qquad a\to I \otimes a \qquad a\to a\otimes I. \end{displaymath} \item A \textbf{left-biased oplax monoidal category} has a binary tensor product $a\otimes b$, a unit $I$, and constraints \begin{displaymath} (a\otimes b)\otimes c\to a \otimes (b\otimes c) \qquad a\to I \otimes a \qquad a\to a\otimes I. \end{displaymath} \item A \textbf{right-skew monoidal category} has a binary tensor product $a\otimes b$, a unit $I$, and constraints \begin{displaymath} a \otimes (b\otimes c) \to (a\otimes b)\otimes c \qquad a\to I \otimes a \qquad a\otimes I\to a. \end{displaymath} \item A \textbf{left-skew monoidal category} has a binary tensor product $a\otimes b$, a unit $I$, and constraints \begin{displaymath} (a\otimes b)\otimes c\to a \otimes (b\otimes c) \qquad I \otimes a\to a \qquad a\to a\otimes I. \end{displaymath} \end{itemize} There are two other possibilities, but they seem not to have been studied; we could call them ``coskew'' to have a name. Terminologically, note that we use ``right'' and ``left'' to indicate the direction of the biased associator, while the direction of the unitors is indicated by ``lax'' or ``oplax'' (if they are in the same direction) or ``skew'' (if they are in different directions). This use of ``lax'' and ``oplax'' in the biased case is justified by the fact that \emph{biased (op)lax monoidal categories are a special case of unbiased ones}, with the $n$-ary tensor products defined in terms of the binary one by left- or right-associativity. The unbiased structures arising in this way can be characterized as those in which certain generalized associativities are identities (or, up to equivalence, isomorphisms). \hypertarget{definitions}{}\subsection*{{Definitions}}\label{definitions} The above definitions are complete except for the coherence axioms. In the unbiased case these can be deduced from the general notion of lax algebra. In the biased cases, the axioms are roughly the same as those in MacLane's original definition of monoidal category: one pentagon, three unit triangles, and one unit-unit axiom. (Kelly's later reduction of these to one pentagon and one unit triangle relies on invertibility of the constraints.) In all cases it is possible to orient all of these axioms so as to make sense. \hypertarget{related_notions}{}\subsection*{{Related notions}}\label{related_notions} First note that all kinds of lax monoidal categories can be generalized to \textbf{lax monoids} in a [[monoidal bicategory]]. Using this generalization, we can make connections to many other kinds of monoidal structures: \begin{itemize}% \item Oplax monoidal categories (i.e. oplax monoids in [[Cat]]) can be identified with [[multicategories]] that are ``weakly representable''. \item Multicategories themselves are precisely lax monoids in [[Span]], and also normal lax monoids in [[Prof]]. \item We obtain various kinds of lax [[promonoidal category]] by working in [[Prof]] instead of [[Cat]]. \item In particular, non-unital [[closed categories]] can be defined as biased lax monoids in [[Prof]] whose multiplication is corepresentable in the first argument and whose left unitor is invertible. If the identity is also representable, we obtain a (unital) closed category. The identification of biased lax monoids with particular unbiased ones thereby specializes to the identification of closed categories with closed multicategories. \end{itemize} [[!redirects lax monoidal category]] [[!redirects unbiased lax monoidal category]] [[!redirects biased lax monoidal category]] [[!redirects right-biased lax monoidal category]] [[!redirects left-biased lax monoidal category]] [[!redirects colax monoidal category]] [[!redirects unbiased colax monoidal category]] [[!redirects biased colax monoidal category]] [[!redirects right-biased colax monoidal category]] [[!redirects left-biased colax monoidal category]] [[!redirects oplax monoidal category]] [[!redirects unbiased oplax monoidal category]] [[!redirects biased oplax monoidal category]] [[!redirects right-biased oplax monoidal category]] [[!redirects left-biased oplax monoidal category]] [[!redirects skew monoidal category]] [[!redirects right-skew monoidal category]] [[!redirects left-skew monoidal category]] [[!redirects lax monoidal categories]] [[!redirects unbiased lax monoidal categories]] [[!redirects biased lax monoidal categories]] [[!redirects right-biased lax monoidal categories]] [[!redirects left-biased lax monoidal categories]] [[!redirects colax monoidal categories]] [[!redirects unbiased colax monoidal categories]] [[!redirects biased colax monoidal categories]] [[!redirects right-biased colax monoidal categories]] [[!redirects left-biased colax monoidal categories]] [[!redirects oplax monoidal categories]] [[!redirects unbiased oplax monoidal categories]] [[!redirects biased oplax monoidal categories]] [[!redirects right-biased oplax monoidal categories]] [[!redirects left-biased oplax monoidal categories]] [[!redirects skew monoidal categories]] [[!redirects right-skew monoidal categories]] [[!redirects left-skew monoidal categories]] [[!redirects lax monoid]] [[!redirects lax monoids]] [[!redirects oplax monoid]] [[!redirects oplax monoids]] [[!redirects colax monoid]] [[!redirects colax monoids]] \end{document}