¿Cómo combinar \overbrace y \overline como quiero?

¿Cómo combinar \overbrace y \overline como quiero?

Considera lo siguiente:

\documentclass[a4paper,12pt]{article}

\usepackage{amsmath}

\begin{document}

$u=\overline{\exists degree\hspace{3pt} \overbrace{\big(\underbrace{degrees(course, degree)}_{u_1}\wedge\underbrace{degree\neq 1}_{u_2}\big)}^{u_3}}$

\end{document}

Lo que produce esto:

ingrese la descripción de la imagen aquí

Quiero que aparezca el \overbracecon la etiqueta.u_3arribathe \overline, pero aún abarca solo los paréntesis. No puedo encontrar una manera de hacerlo.

¿Se puede hacer de alguna manera?

Respuesta1

Componga todo tres veces. La primera vez como un fantasma horizontal para establecer el ancho, la segunda vez como algo real, la tercera vez como un fantasma vertical.

Las dos primeras veces los dos objetos se superponen con \ooalign.

Para ahorrar tecleo, el objeto se guarda en un comando temporal, que toma como argumento una regla invisible que indica su altura.

\documentclass[a4paper,12pt]{article}
\usepackage{amsmath}
\usepackage{lipsum} % for giving context

\newcommand{\func}[1]{\operatorname{#1}}
\newcommand{\var}[1]{\mathit{#1}}

\begin{document}

\lipsum*[2]
\[
\newcommand{\contents}[1]{%
  \exists\, \var{degree} \: 
  \overbrace{
    #1
    \bigl(\,
      \underbrace{\func{degrees}(\var{course},\var{degree})}_{u_1}
      \wedge
      \underbrace{\var{degree}\neq 1}_{u_2}
    \,\bigr)
  }^{u_3}
}
u={\ooalign{%
    $\displaystyle\overline{\rule{0pt}{2ex}\hphantom{\contents{}}}$\cr
    $\displaystyle\contents{\rule{0pt}{2.75ex}}$\cr
}}
\vphantom{\contents{\rule{0pt}{2.75ex}}}
\]
\lipsum[2]

\end{document}

ingrese la descripción de la imagen aquí

Respuesta2

Otra solución imprime la fórmula solo una vez (no tres veces):

$$
  u =
  \vbox{\def\shiftA{3.3ex}\def\shiftB{\vrule height2.7ex width0pt} %spec. numbers for this formula
    \kern\shiftA\hrule\kern-\shiftA
    \hbox{$\displaystyle
       \exists\, {\it degree} 
           \overbrace{\big(
               \underbrace{\shiftB{\rm degrees}({\it course},{\it degree})}_{u_1}
               \wedge
               \underbrace{{\it degree}\neq 1}_{u_2}
           \big)}^{u_3}
    $}}
$$

Respuesta3

\documentclass[12pt]{article}
\usepackage{mathtools}

\begin{document}
\def\contento{\exists\,\mathit{degree}}
\def\contenti{\big(
    \underbrace{{\rm degrees}({\it course},{\it degree})}_{u_1}
    \wedge
    \underbrace{{\it degree}\neq 1}_{u_2}
    \big)}
\[
u=\overline{\contento\phantom{\contenti}}
  \llap{$\displaystyle
        \overbrace{\vphantom{\overline{\contento\contenti}}\contenti}^{u_3}
    $}
\]

\[
u=\overline{\contento\vphantom{\contenti}}\!
\overbrace{
    \overline{\vphantom{\contento}\contenti}
}^{u_3}
\]
\end{document}

ingrese la descripción de la imagen aquí

Respuesta4

Quiero que aparezca el \overbracecon la etiqueta.u_3arribathe \overline, pero aún abarca solo los paréntesis. No puedo encontrar una manera de hacerlo.

Entonces. Olvidar \overline. Simplemente use \hspacey dibuje un \ruleen la posición, altura, largo (y ancho) deseados.

$$
u=\exists degree\hspace{3pt}
\overbrace{\big(\underbrace{degrees(course, degree)}_{u_1}
\wedge\underbrace{degree\neq 1}_{u_2}\big)
   \hspace{-21em}\rule[2.25ex]{21em}{}
}^{u_3}
$$

ingrese la descripción de la imagen aquí

información relacionada