\widering over \bar 不起作用

\widering over \bar 不起作用

我需要编写一个涉及集合闭包内部的拓扑表达式。对于(非简单)集合的内部,我使用包\widering中的宏yhmath,如果我用 编写闭包,它就可以正常工作\overline。但如果涉及的集合很简单,我想使用\bar

这里有几个例子。我想要实现的是一个像左边的表达式,但是使用\bar或任何在简单集合上画一条较短的线的东西。或者另一个提供\widering不会导致此问题的版本的包(或宏)。任何想法都会受到欢迎。

\documentclass{article}
\usepackage   {amssymb}
\usepackage   {yhmath} % \widering

\begin{document}
My problem is the second expression:
\[ 
  E \setminus \widering{\bigcup_{n\in\mathbb{N}} \overline{A}_n} \ne % all good
  E \setminus \widering{\bigcup_{n\in\mathbb{N}} \bar{A}_n}.         % not so good
\]

Another simpler example:
\[
  \widering{A\overline{B}C} \ne
  \widering{A\bar{B}C}.
\]
\end{document}

您可以在这里看到发生了什么: 在此处输入图片描述

答案1

的定义\widering并不是很好,因为它把环放得太高了。

此外,如果必须将外部重音放在复杂公式上,则嵌套重音总是会带来问题。

这是关于固定的提议\widering,它也符合嵌套重音的要求。

\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage[nowidering]{yhmath} % \widering

\makeatletter
\newcommand{\widering}[1]{\mathpalette\widering@{#1}}
\newcommand{\widering@}[2]{%
  \begingroup
  \sbox\z@{$\m@th#1#2$}%
  \sbox\tw@{$\m@th#1\wideparen{\copy\z@}$}%
  \mathring{\copy\tw@}%
  \endgroup
}
\makeatother

\begin{document}

My problem is the second expression:
\[ 
  E \setminus \widering{\bigcup_{n\in\mathbb{N}} \overline{A}_n} \ne % all good
  E \setminus \widering{\bigcup_{n\in\mathbb{N}} \bar{A}_n}.         % not so good
\]

Another simpler example:
\[
  \widering{A\overline{B}C} \ne
  \widering{A\bar{B}C}.
\]

\end{document}

在此处输入图片描述

相关内容