Deux diagrammes commutatifs... — Les-mathematiques.net The most powerful custom community solution in the world

Deux diagrammes commutatifs...

Bonjour tout le monde

Je souhaiterais reproduire les deux diagrammes de la copie ci-jointe (extraite du livre Topologie algébrique de Christian Leruste) via Tikz. Je vous remercie par avance pour votre investissement et vos propositions de codes. Remarquer la présence de petits cercles sur le deuxième diagramme, ainsi que celles de numéros encadrés sur les deux pour les référencer.

Bien cordialement,
Thierry.127488

Réponses

  • Bonjour,

    Il doit y avoir dans ce qui suit toute l'infrastructure nécessaire (je te laisse le soin de mettre les lettres qui conviennent pour le premier diagramme).
    \documentclass{article}
    \usepackage{tikz}
    \usepackage{amsopn}
    \usepackage{amssymb}
    \usetikzlibrary{arrows.meta, cd, decorations.markings}
    
    \DeclareMathOperator{\identite}{id}
    \newcounter{diagramcounter}
    \renewcommand{\thediagramcounter}{\fbox{\arabic{diagramcounter}}}
    
    \tikzcdset{
      numbered diagram/.code={%
        \refstepcounter{diagramcounter}\label{numbered-diag-#1}%
      },
      circarrow/.style={{Circle[open]}->}, % utilise la bibliothèque arrows.meta
      % Inspiré de <https://tex.stackexchange.com/a/79226/73317> (Jake)
      circarrow 2/.style={
        decoration={
          markings,
          mark={
            at position 0 with { \draw circle[radius=#1]; }
          },
        },
        postaction=decorate,
      },
      circarrow 2/.default=0.35ex,
    }
    
    \begin{document}
    
    Bla bla en~\ref{numbered-diag-machin} (...)
    
    \begin{center}
      \begin{tikzcd}[numbered diagram=machin]
        \identite_{A} \arrow[rr, circarrow, "\Omega_{A}", "\cong"']
                      \arrow[dd, circarrow, "u_{*}^{A}"]
          &                               & v \arrow[dd, circarrow, "u_{*}^{B}"] \\
          & \thediagramcounter \\
        u \arrow[r, circarrow, "\cong", "\Omega_{B}"']
          & |[xshift=-1em]| \identite_{B} & u \circ v
      \end{tikzcd}%
      %
      \hspace{4em}%
      \begin{tikzcd}[numbered diagram=truc]
        \identite_{A} \arrow[rr, circarrow 2, "\Omega_{A}", "\cong"']
                      \arrow[dd, circarrow 2, "u_{*}^{A}"]
          &                               & v \arrow[dd, circarrow 2, "u_{*}^{B}"]\\
          & \thediagramcounter \\
        u \arrow[r, circarrow 2, "\cong", "\Omega_{B}"']
          & |[xshift=-1em]| \identite_{B} & u \circ v
      \end{tikzcd}
    \end{center}
    
    (...) spécifié en~\ref{numbered-diag-truc}.
    
    \end{document}
    
    Edit : code mieux indenté.127494
  • Bonjour Thierry
    J'ai été moins rapide que Brian, mais comme je l'ai préparé, je le poste quand même.
    Ne pas oublier de mettre dans le préambule
    \usetikzlibrary{arrows}
    
    Alain127498
  • Mes seigneurs, je vous remercie vraiment du fond du cœur. Vous ne pouvez pas vous imaginer le bien que vous m'apportez. Merci encore à vous deux. :-) :-)
Connectez-vous ou Inscrivez-vous pour répondre.
Success message!