diff --git a/TFG_Sixto_José_Martínez_Gan.tex b/TFG_Sixto_José_Martínez_Gan.tex new file mode 100644 index 0000000..41a8d8e --- /dev/null +++ b/TFG_Sixto_José_Martínez_Gan.tex @@ -0,0 +1,284 @@ +%&pdflatex +%!TEX TS-program = pdflatex +%!TEX encoding = UTF-8 Unicode +% +% PLANTILLA PARA UN TRABAJO DE FIN DE GRADO +% EN EL GRADO DE MATEMÁTICAS DE LA UNIVERSIDAD DE ZARAGOZA +% +% Mario Pérez Riera +% Área de Análisis Matemático, Universidad de Zaragoza +% +% Última modificación: 1 de agosto de 2021 +% +% Escrito para pdfLaTeX +% +% +\documentclass[11pt]{book} + +% Paquetes y fuentes +%--------------------------------------------------------------------------- +\usepackage{geometry} % define las dimensiones de la página +\geometry{ + a4paper, % Tamaño del papel + centering, % Zona útil centrada + margin = 25mm, % Márgenes en blanco: 25mm +% includehead, % Incluir la cabecera en el área del texto +% includefoot, % Incluir el pie en el área del texto +} + +\usepackage[utf8]{inputenc} % para usar el teclado normalmente +\usepackage[spanish]{babel} % selecciona idioma +\usepackage[T1]{fontenc} % gestión de fuentes con acentos + + +\usepackage{graphicx} +\graphicspath{{C:/Users/usuario/Dropbox/Carrera_5/Asignaturas/TFG/Imagenes_y_Figuras/Identidad_Corporativa_Universidad_de_Zaragoza}} +% Si alguno de estos paquetes no los vas a usar, mejor los quitas: +\usepackage{amssymb} % para cargar las fuentes de la A.M.S. +\usepackage{amsmath} % para usar letras griegas en negrita +\usepackage{amsthm} % mejora los entornos tipo-teorema y proof +\usepackage{mathptmx} % fuente Times +\usepackage{diffcoeff} +\usepackage{nolbreaks} +\usepackage{nicefrac} +%\usepackage{lmodern} % fuente Times +\usepackage{tikz} % para los dibujos +\usetikzlibrary{babel} % para evitar conflictos entre TikZ y babel + +%\usepackage{longtable} % permite saltos de páginas en tablas largas + +%------ Enlaces en el pdf +\usepackage{url} +\usepackage[pdftex, colorlinks=true, citecolor=cyan, linkcolor=black, +urlcolor=black]{hyperref} + +%------ Cabeceras y pies de página +\usepackage{titleps} + +\newpagestyle{miestilo}{ +%-- Cabecera par y cabecera impar +\sethead[\thepage][][\textsl{\chaptername\ \thechapter. \chaptertitle}] +{\textsl{Una plantilla para el TFG \ - \ Mario Pérez Riera}}{}{\thepage} +%-- Pie de página par y pie de página impar +%\setfoot[][\textsl{\thesection. \sectiontitle}][] +%{}{\textsl{\thesection. \sectiontitle}}{} +} + +\newpagestyle{primeraparte}{ +%-- Cabecera par y cabecera impar +\sethead[\thepage][][\textsl{\chaptertitle}] +{\textsl{Una plantilla para el TFG \ - \ Mario Pérez Riera}}{}{\thepage} +%-- Pie de página par y pie de página impar +%\setfoot[][\textsl{\thesection. \sectiontitle}][] +%{}{\textsl{\thesection. \sectiontitle}}{} +} + +%------ \S 4.3, p. 93, de The LaTeX Companion 1a ed. (Figura 4.2) (Juan Luis) +\newcommand{\clearemptydoublepage}{\newpage{\pagestyle{empty}\cleardoublepage}} +\newcommand{\sectionmarkwithoutsections}[1]{\markright{#1}} + +\makeindex + +\theoremstyle{plain} % Entornos tipo teorema +\newtheorem{teorema}{Teorema}[chapter] +\newtheorem{proposicion}[teorema]{Proposición} +\newtheorem{lema}[teorema]{Lema} % La misma numeración que 'teorema' +\newtheorem{definicion}[teorema]{Definición} + +\theoremstyle{definition} % Entornos tipo definición +\newtheorem*{defin}{Definición} % El asterisco hace que no se numere +%\newtheorem{ejemplo}{Ejemplo} +\newtheorem{ejemplo}[teorema]{Ejemplo} + +% Conjuntos +\usepackage[pizarra, barra]{conjuntos_TFG} + +% Vectores +\usepackage[negrita, parentesis, vertical]{vectores_TFG} + +% Cosas propias +\newcommand{\modulo}[1]{\nolbreaks{\ensuremath{#1}-módulo}} +\newcommand{\submodulo}[1]{\nolbreaks{\ensuremath{#1}-submódulo}} +\DeclareMathOperator{\imagen}{im} +\usepackage[loadshadowlibrary, shadow, textwidth=20mm, textsize=tiny]{todonotes} + +\newcommand{\engendrado}[1]{\ensuremath{\left\langle #1 \right\rangle}} + +\newcommand{\anillodepolinomios}[2]{\ensuremath{#1\!\left[#2\right]}} +\newcommand{\LT}[1]{\ensuremath{\text{LT}\left(#1\right)}} +\newcommand{\LM}[1]{\ensuremath{\text{LM}\left(#1\right)}} +\newcommand{\syz}[1]{\ensuremath{\text{syz}\left(#1\right)}} +\DeclareMathOperator{\grado}{grado} + +\newcommand{\derivaciones}[1]{\ensuremath{\text{Der}\!\left( #1 \right)}} + +\begin{document} + +\frontmatter % Parte primera del texto +\pagestyle{primeraparte} % Estilo de cabeceras para la parte primera del texto + +%\pagenumbering{roman} % Incluido en \frontmatter + +%--- PORTADA DEL TFG +\begin{titlepage} +\begin{center} + +\null +\vfill + +\Huge{\bfseries Una plantilla en {\LaTeX}}\\% +\Huge{\bfseries para el trabajo de fin de grado} + +\vfill + +\noindent +\begin{figure}[h] +\centering +\includegraphics[width=100mm]{ciencias.png}\\% +\includegraphics[width=100mm]{logoUZ.png} +\end{figure} + +\vfill + +\Huge{\bfseries Sixto José Martínez Gan}\\% +\Huge{Trabajo de fin de grado de Matemáticas}\\% +\Huge{Universidad de Zaragoza}\\% + +\vfill +\huge{Junio de 2025} +\end{center} +\end{titlepage} +%--- FIN DE LA PORTADA + +\clearemptydoublepage + +%\setcounter{page}{7} % Por si queremos imponer un número de página + +%--- RESUMEN +\chapter{Resumen} + + + +%--- FIN DEL RESUMEN + +\clearemptydoublepage + +\tableofcontents + +\clearemptydoublepage + +%------------- +\mainmatter % Parte principal del texto +\pagestyle{miestilo} % Estilo de cabeceras para la parte principal del texto + +%--- CAPÍTULO 1 DEL TFG +\chapter{Introducción} + + Supongamos que tenemos un polinomio en varias variables, por ejemplo \nolbreaks{$f(x, y, z) := x^2 + y^2 + xz$}, y estamos trabajando intensivamente con combinaciones lineales polinómicas de sus derivadas parciales de primer orden, es decir, expresiones como + \begin{equation*} + y^2\diffp{f}{x} + xy\diffp{f}{y} - x^3\diffp{f}{z}, \quad \diffp{f}{x} - \diffp{f}{z}, \quad \text{o} \quad \left(x^2 - y^2\right)\diffp{f}{x} + \left( xy - yz \right)\diffp{f}{y}. + \end{equation*} + Entre las muchas preguntas que podemos hacernos se encuentra saber cuáles son aquellas cuyo valor es un múltiplo escalar de la propia $f$. Por ejemplo, + \begin{equation*} + x\diffp{f}{x} + y\diffp{f}{y} + z\diffp{f}{z} = x \cdot \left( 2x + z \right) + y \cdot 2y + z \cdot x = 2x^2 + 2y^2 + 2xz = 2f. + \end{equation*} + \todo{¿Cómo de larga debería ser esta introducción? ¿Tiene que <> ya los funcionamientos o solo plantear los problemas que queremos resolver?}¿Cuáles son estas? ¿Qué estructura siguen? ¿Y cómo podemos calcularlas? + +\chapter{Módulos} + \todo[inline]{¿Hace falta introducir las definiciones de anillo y espacio vectorial o se dan por hechas?} + Como hemos podido ver, los conjuntos con los que estamos trabajando son una generalización de los espacios vectoriales donde los coeficientes pertenecen a un anillo en vez de a un cuerpo. A esta generalización la llamamos módulo. + \begin{definicion} + Sea $A$ un anillo y $M$ un conjunto sobre el que hay definidas dos operaciones: una suma, $+: M \times M \rightarrow M$; y una multiplicación escalar, $\cdot: A \times M \rightarrow M$. El conjunto $M$ es un \modulo{A} si + \begin{itemize} + \item $(M, +)$ es un grupo abeliano y + \item se cumple que $\left\lbrace \begin{aligned} + &\left( a + b \right) \cdot m = a\cdot m + b \cdot m, \\ + &a \cdot \left( m+n \right) = a\cdot m + a\cdot n, \\ + &\left( ab \right) \cdot m = a\cdot \left( b\cdot m \right) \;\; \text{y} \\ + &1 \cdot m = m + \end{aligned} \right. \quad \text{para todo $a$ y $b$ en $A$ y $m$ y $n$ en $M$.}$ + \end{itemize} + \end{definicion} + \begin{ejemplo} + $\enteros^n$ es un \modulo{\enteros} con las operaciones naturales. En general, dado cualquier anillo $A$, $A^n$ es también un \modulo{A} con las operaciones componente a componente. Trivialmente, el propio $A$ es un \modulo{A}. + + La definición de espacio vectorial es más restrictiva que la de módulo, por lo que todo \nolbreaks{$C$-espacio vectorial} donde $C$ es un cuerpo es también un \modulo{C}. Por ejemplo, $\reales^n$ es un \modulo{\reales}. + + A lo largo de este trabajo será de gran importancia el anillo de polinomios sobre un cuerpo, $\anillodepolinomios{K}{x_1, x_2, \dots, x_n}$, al que denotaremos \anillodepolinomios{K}{\mathbf{x}}. Sobre todo porque a partir de este construimos el conjunto de vectores de polinomios $\anillodepolinomios{K}{\mathbf{x}}^n$, que es un \modulo{\anillodepolinomios{K}{\mathbf{x}}}. + \end{ejemplo} + \todo[inline]{¿Haría falta alguna introducción o hilo conductor para esta definición o es mejor yuxtaponerlas?} + \begin{definicion} + Sea $A$ un anillo y $M$ un \modulo{A}. Un subconjunto no vacío $N \subseteq M$ se dice que es un \submodulo{A} de $M$ si es un \modulo{A} con las operaciones de $M$ restringidas. + \end{definicion} + \begin{ejemplo} + Si pensamos en \enteros{} como un \modulo{\enteros}, $2\enteros$ es un \submodulo{\enteros}. Esto debería recordarnos a los ideales de \enteros. De hecho, un ideal de un anillo $A$ es un \submodulo{A} del propio $A$. + + Consideremos el \modulo{\anillodepolinomios{\reales}{x, y}} $\anillodepolinomios{\reales}{x, y}^2$ y tomemos un par de elementos, como pueden ser $\formatovector{u} := \vectordos{x^2y + xy^2}{x + y}$ y $\formatovector{v} := \vectordos{y^3}{x^3}$. El conjunto de combinaciones lineales\todo[fancyline]{¿Es necesario explicar cómo serían las combinaciones lineales de los módulos o con la analogía a espacios vectoriales hecha antes es suficiente?} de estos vectores, + \begin{equation*} + \engendrado{\formatovector{u}, \formatovector{v}}_{\anillodepolinomios{\reales}{x, y}} := \definicionconjunto{a \formatovector{u} + b\formatovector{v}}{a, b \in \anillodepolinomios{\reales}{x, y}}, + \end{equation*} es un \submodulo{\anillodepolinomios{\reales}{x, y}}. De hecho, a este tipo de módulos los llamaremos submódulos generados por $\mathbf{u}$ y $\mathbf{v}$. + \end{ejemplo} + \begin{definicion} + Sea $A$ un anillo, $M$ un \modulo{A} y $N$ un \submodulo{A} de $M$. Diremos que $N$ está generado por $G \subseteq N$ y lo denotaremos como $N = \engendrado{G}$ si + \begin{equation*} + N = \definicionconjunto{a_1g_1 + a_2g_2 + \dots + a_kg_k}{a_i \in A, g_i \in G, k \in \naturales}. + \end{equation*} + En el caso que exista algún $G = \conjunto{g_1, g_2, \dots, g_n}$ de forma que $N = \engendrado{G}$ diremos que $N$ está finitamente generado y lo escribiremos como $N = \engendrado{g_1, g_2, \dots, g_n}$. + \end{definicion} + \begin{definicion} + Sea $A$ un anillo y $M$ y $N$ dos \modulo{A}s. Una aplicación $\phi: M \longrightarrow N$ se dice que es un homomorfismo de \modulo{A}s si respeta las operaciones de módulo, es decir, si + \begin{itemize} + \item $\phi\!\left( m + m' \right) = \phi\!\left( m \right) + \phi\!\left( m' \right)$ y + \item $\phi\!\left( am \right) = a\phi\!\left( m \right)$ + \end{itemize} + para todo $m, m' \in M$ y $a \in A$. \todo[inline]{¿Se deberían introducir las nociones de isomorfismo, ser isomorfo, etc?} + \end{definicion} + \begin{ejemplo} + La inclusión de $\enteros^n$ en $\racionales^n$ es un homomorfismo de \modulo{\enteros}s, sin embargo, no es un homomorfismo de \modulo{\racionales}s ya que $\enteros^n$ no es un \modulo{\racionales}. + Por otro lado, la aplicación $\phi: \anillodepolinomios{\complejos}{x, y} \longrightarrow \complejos$ que envía a cada polinomio $p\!\left( x, y \right)$ a $p\!\left(0, 1\right)$ es un homomorfismo de \modulo{\complejos}s. + \end{ejemplo} + \begin{lema} + Sea un anillo $A$, dos \modulo{A}s $M$ y $N$ y un homomorfismo $\phi$ de \modulo{A}s. $\ker \phi$ es un submódulo de $M$ e $\imagen \phi$ es un submódulo de $N$. + \end{lema} + \todo[inline]{¿Es apropiado incluir la demostración o es suficientemente obvio?} + \begin{definicion} + Sea $A$ un anillo, $M$ un \modulo{A}, $N$ un \submodulo{A} de $M$ y $\sim$ la siguiente relación de equivalencia sobre $M$: $m \sim m' \Leftrightarrow m - m' \in N$. Definimos el cociente de un módulo por un submódulo como $\cociente{M}{N} := \cociente{M}{\sim}$. Los elementos de este cociente se denotarán por $m + N$. + \end{definicion} + + Con estas definiciones, ya podemos empezar a expresar los objetos que nos encontrábamos al principio en un lenguaje más formal. Para abreviar la notación, escribiremos $\partial_i$ cuando nos refiramos a la aplicación + \begin{align*} + \partial_i : \anillodepolinomios{K}{\mathbf{x}} &\rightarrow \anillodepolinomios{K}{\mathbf{x}} \\ + p(x, y) &\mapsto \diffp{p}{x_i}(x, y). + \end{align*} + \todo[inline]{¿Hasta qué punto interesa o deja de interesar poner los argumentos de los polinomios?} + Con estas aplicaciones, pasamos a definir el módulo de derivaciones, el conjunto donde residen todas las posibles combinaciones lineales de derivadas parciales: + \begin{equation*} + \derivaciones{\anillodepolinomios{K}{\mathbf{x}}} := \definicionconjunto{a_1\partial_1 + a_2\partial_2 + \dots + a_n\partial_n}{a_i \in \anillodepolinomios{K}{\mathbf{x}} \, \forall i}. + \end{equation*} + Es un \modulo{\anillodepolinomios{K}{\mathbf{x}}}. Tomando $f \in \anillodepolinomios{K}{\mathbf{x}}$, aquellas derivaciones ---elementos de \derivaciones{\anillodepolinomios{K}{\mathbf{x}}}--- que cuando se aplican a $f$ devuelven un múltiplo escalar forman el submódulo de derivaciones tangentes a $f$: + \begin{equation*} + \derivaciones{f} := \definicionconjunto{\delta \in \derivaciones{\anillodepolinomios{K}{\mathbf{x}}}}{\delta\!\left( f \right) \in \engendrado{f}}. + \end{equation*} + + \begin{definicion} + Sea $A$ un anillo. Diremos que $A$ es noetheriano si todos sus ideales son finitamente generados. + + Diremos también que un \modulo{A} $M$ es noetheriano si todo submódulo $N \subseteq M$ está finitamente generado. Es decir, si existen $n_1, n_2, \dots, n_k$ en $N$ de forma que $N = \engendrado{n_1, n_2, \dots, n_k}_A$. + \end{definicion} + \begin{lema} + Sea $A$ un anillo y $M$ un \modulo{A} noetheriano.\todo[inline]{¿A partir de qué momento se pueden suprimir las premisas genéricas?} Los submódulos y módulos cocientes de $M$ son también noetherianos. + \end{lema} + \begin{proof} + [\textsc{Demostración}] + \end{proof} + \begin{lema} + Sea $A$ un anillo y $M$ un \modulo{A}. Que $M$ sea noetheriano es equivalente a que toda cadena ascendente de submódulos $N_1 \subseteq N_2 \subseteq \dots$ sea eventualmente estacionaria. + \end{lema} + \begin{proof} + [\textsc{Demostración}] + \end{proof} + +\chapter{Bases de Gröbner y Syzygias} + +\chapter{El Criterio de Saito} +\end{document} \ No newline at end of file diff --git a/ciencias.png b/ciencias.png new file mode 100644 index 0000000..4fc88dc Binary files /dev/null and b/ciencias.png differ diff --git a/conjuntos_TFG.sty b/conjuntos_TFG.sty new file mode 100644 index 0000000..7091ff0 --- /dev/null +++ b/conjuntos_TFG.sty @@ -0,0 +1,42 @@ +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{conjuntos} + +\RequirePackage{amsmath, amssymb, amsfonts} + +\newcommand{\formatoconjuntogotico}[1]{\ensuremath{\mathfrak{#1}}} +\newcommand{\formatoconjuntopizarra}[1]{\ensuremath{\mathbb{#1}}} + +\newcommand{\formatoconjunto}[1]{\formatoconjuntopizarra{#1}} +\DeclareOption{gotico}{\renewcommand{\formatoconjunto}[1]{\formatoconjuntogotico{#1}}} +\DeclareOption{pizarra}{\renewcommand{\formatoconjunto}[1]{\formatoconjuntopizarra{#1}}} + +\newcommand{\conjunto}[1]{\ensuremath{ \left\lbrace #1\right\rbrace }} + +\newcommand{\definicionconjuntobarra}[2]{\conjunto{#1 \left\lvert #2 \right.}} +\newcommand{\definicionconjuntodospuntos}[2]{\conjunto{#1 \; : \; #2}} + +\newcommand{\definicionconjunto}[2]{\definicionconjuntobarra{#1}{#2}} +\DeclareOption{barra}{\renewcommand{\definicionconjunto}[2]{\definicionconjuntobarra{#1}{#2}}} +\DeclareOption{dos puntos}{\renewcommand{\definicionconjunto}[2]{\definicionconjuntodospuntos{#1}{#2}}} + +\newcommand{\complejos} {\ensuremath{\formatoconjunto{C}}} +\newcommand{\reales} {\ensuremath{\formatoconjunto{R}}} +\newcommand{\racionales}{\ensuremath{\formatoconjunto{Q}}} +\newcommand{\enteros} {\ensuremath{\formatoconjunto{Z}}} +\newcommand{\naturales} {\ensuremath{\formatoconjunto{N}}} +\newcommand{\enterosmodulo}[1]{\ensuremath{\enteros_{#1}}} +\newcommand{\naturalescero}{\ensuremath{\naturales_{0}}} +\newcommand{\naturalesmas}{\ensuremath{\naturales^{+}}} +%\newcommand{\imagen}[1]{\ensuremath{\text{Im}\!\left(#1\right)}} +\newcommand{\multiconjunto}[1]{\ensuremath{ \left\lbrace\!\! \left\lbrace #1\right\rbrace \!\!\right\rbrace }} +\newcommand{\partes}[1]{\ensuremath{\mathcal{P}\!\left(#1\right)}} +\newcommand{\cociente}[2]{\ensuremath{\nicefrac{#1}{#2}}} +\newcommand{\claseequivalencia}[1]{\ensuremath{\left[ #1 \right]}} + +\newcommand{\union}[2]{\ensuremath{#1 \cup #2}} +\newcommand{\interseccion}[2]{\ensuremath{#1 \cap #2}} +\newcommand{\Union}[2]{\ensuremath{\bigcup_{#2} #1}} +\newcommand{\Interseccion}[2]{\ensuremath{\bigcap_{#2} #1}} +\newcommand{\complementario}[1]{\ensuremath{ {#1}^{\text{C}} }} + +\ProcessOptions\relax \ No newline at end of file diff --git a/logoUZ.png b/logoUZ.png new file mode 100644 index 0000000..a169880 Binary files /dev/null and b/logoUZ.png differ diff --git a/vectores_TFG.sty b/vectores_TFG.sty new file mode 100644 index 0000000..b78cee9 --- /dev/null +++ b/vectores_TFG.sty @@ -0,0 +1,85 @@ +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{vectores} + +\RequirePackage{amsmath, amssymb, amsfonts} + +\newcommand{\formatovectornegrita}[1]{\ensuremath{\mathbf{#1}}} +\newcommand{\formatovectorflecha}[1]{\ensuremath{\overrightarrow{#1}}} + +\newcommand{\formatovector}[1]{\formatovectornegrita{#1}} +\newcommand{\vectorbasecanonica}[1]{\ensuremath{\formatovector{e}_{#1}}} +\DeclareOption{negrita}{\renewcommand{\formatovector}[1]{\formatovectornegrita{#1}} + \renewcommand{\vectorbasecanonica}[1]{\ensuremath{\formatovector{e}_{#1}}} + } +\DeclareOption{flecha}{\renewcommand{\formatovector}[1]{\formatovectorflecha{#1}} + \renewcommand{\vectorbasecanonica}[1]{\ensuremath{\formatovector{e_{#1}}}} + } + + +\newcommand{\euno} {\vectorbasecanonica{1}} +\newcommand{\edos} {\vectorbasecanonica{2}} +\newcommand{\etres}{\vectorbasecanonica{3}} + + +\newcommand{\vectorverticalparentesis}[1]{\ensuremath{\begin{pmatrix} #1 \end{pmatrix}}} +\newcommand{\vectorverticalcorchetes}[1]{\ensuremath{\begin{bmatrix} #1 \end{bmatrix}}} + +\newcommand{\vectorvertical}[1]{\vectorverticalparentesis{#1}} + +\newcommand{\vectorverticaldos}[2]{\vectorvertical{#1 \\ #2}} +\newcommand{\vectorverticaltres}[3]{\vectorvertical{#1 \\ #2 \\ #3}} +\newcommand{\vectorverticalcuatro}[4]{\vectorvertical{#1 \\ #2 \\ #3 \\ #4}} +\newcommand{\vectorverticalcinco}[5]{\vectorvertical{#1 \\ #2 \\ #3 \\ #4 \\ #5}} + +\newcommand{\vectorhorizontalparentesis}[1]{\ensuremath{\left( #1 \right)}} +\newcommand{\vectorhorizontalcorchetes}[1]{\ensuremath{\left[ #1 \right]}} + +\newcommand{\vectorhorizontal}[1]{\vectorhorizontalparentesis{#1}} + +\newcommand{\vectorhorizontaldos}[2]{\vectorhorizontal{#1, #2}} +\newcommand{\vectorhorizontaltres}[3]{\vectorhorizontal{#1, #2, #3}} +\newcommand{\vectorhorizontalcuatro}[4]{\vectorhorizontal{#1, #2, #3, #4}} +\newcommand{\vectorhorizontalcinco}[5]{\vectorhorizontal{#1, #2, #3, #4, #5}} + +\DeclareOption{parentesis}{\renewcommand{\vectorvertical}[1]{\vectorverticalparentesis{#1}} + \renewcommand{\vectorhorizontal}[1]{\vectorhorizontalparentesis{#1}} + } +\DeclareOption{corchetes}{\renewcommand{\vectorvertical}[1]{\vectorverticalcorchetes{#1}} + \renewcommand{\vectorhorizontal}[1]{\vectorhorizontalcorchetes{#1}} + } + +\renewcommand{\vector}[1]{\vectorvertical{#1}} +\newcommand{\vectordos}[2]{\vectorverticaldos{#1}{#2}} +\newcommand{\vectortres}[3]{\vectorverticaltres{#1}{#2}{#3}} +\newcommand{\vectorcuatro}[4]{\vectorverticalcuatro{#1}{#2}{#3}{#4}} +\newcommand{\vectorcinco}[5]{\vectorverticalcinco{#1}{#2}{#3}{#4}{#5}} + +\DeclareOption{vertical}{\renewcommand{\vector}[1]{\vectorvertical{#1}} + \renewcommand{\vectordos}[2]{\vectorverticaldos{#1}{#2}} + \renewcommand{\vectortres}[3]{\vectorverticaltres{#1}{#2}{#3}} + \renewcommand{\vectorcuatro}[4]{\vectorverticalcuatro{#1}{#2}{#3}{#4}} + \renewcommand{\vectorcinco}[5]{\vectorverticalcinco{#1}{#2}{#3}{#4}{#5}} + } +\DeclareOption{horizontal}{\renewcommand{\vector}[1]{\vectorhorizontal{#1}} + \renewcommand{\vectordos}[2]{\vectorhorizontaldos{#1}{#2}} + \renewcommand{\vectortres}[3]{\vectorhorizontaltres{#1}{#2}{#3}} + \renewcommand{\vectorcuatro}[4]{\vectorhorizontalcuatro{#1}{#2}{#3}{#4}} + \renewcommand{\vectorcinco}[5]{\vectorhorizontalcinco{#1}{#2}{#3}{#4}{#5}} +} + +\newcommand{\productoescalarpunto}[2]{\ensuremath{#1 \cdot #2}} +\newcommand{\productoescalarantilambda}[2]{\ensuremath{\left\langle #1 , #2 \right\rangle}} + +\newcommand{\productoescalar}[2]{\productoescalarantilambda{#1}{#2}} +\DeclareOption{punto}{\renewcommand{\productoescalar}[2]{\productoescalarpunto{#1}{#2}}} +\DeclareOption{antilambdas}{\renewcommand{\productoescalar}[2]{\productoescalarantilambda{#1}{#2}}} + +\newcommand{\normageneralizada}[2]{\ensuremath{\left\lvert\!\left\lvert #2 \right\rvert\!\right\rvert_{#1}}} +\newcommand{\norma}[1]{\normageneralizada{}{#1}} + +\newcommand{\productovectorial}[2]{\ensuremath{#1 \times #2}} + +\newcommand{\traspuesto}[1]{\ensuremath{{#1}^{\text{T}}}} + + +\ProcessOptions\relax \ No newline at end of file