# comm. diagram of ∞ ordinals with ∞ morphisms

Just started learning TikZ this week, and I'm coming in with kind of a complex question for a first render.

I'd like to be able to take a numberline, and maybe a /foreach loop, to render a supertask that represents the transfinite ordinals in a flat numberline rather than the spiral here:

Each successive tick on the 1-D natural numberline should get closer to the next by a constant ratio, asymptomatically reaching ω, then ω+1, ω+2, ... (up to a 2nd asymptote), then 2ω, 3ω, ... (a 3rd asymp.)

Above this, I also need an empty set symbol, with arrows pointing from the empty set, to the tick-nodes on the numberline. The arrows should exist between the first few elements of the natural numbers, then ellipses ... will imply an infinite succession of arrows. Then a finite number of arrows point to 2ω, 3ω with ellipses before the arrow that points to ω², etc.

I don't mind if it's ugly, I can fine tune the scaling, as long as someone can help me get the basic concept to render at all

• There are multiple concepts: The spiral (is the function for it), the triangles (could be an arrow tip, a node, or just manually drawn), the colors (which order, how fast do they transition), non-triangles (when is it just lines, when does it switch over to triangles), the numbered ticks on the outside (are those logarithmic). If part of the diagram are logarithmic when should we ignore the infinity of it and draw the last triangle/line/tick? Commented Feb 24, 2023 at 9:02
• This gets you a spirale: \tikz[declare function={a=1; k=1; r(\phi)=a*exp(k*\phi);}]\draw plot[domain=0:10, samples=500] ({r(\x)}:\x); So just using ({r(<value>)}:<value>) gets you one point on it. You'll just need to know at which <value>s you need to do something, the previous and the next one can be calculated as well and then you find an orthogonal line to it, or draw triangles between in … Commented Feb 24, 2023 at 9:11
• All I want is a bare bones, no triangles, just a black and white, 1D, 1 axis numberline, no y axis, and no spiral, sorry for the misleading image. Then just a line with small vertical bars that get closer until they form a single point, then widely spaced again.😅The logarithm trick you mentioned did occur to me. It just felt like cheating, because it's not an asymptote. But I guess I can choose a big base to fudge out a fake asymptote, so they look like singularities at pixel scale. I'm down. I assume there's a way to work that into a foreach loop? Commented Feb 24, 2023 at 9:16
• Thank you so much! I'll see what I can do with this. Commented Feb 24, 2023 at 9:28
• @Qrrbrbirlbel How do I get rid of the spiral, is there an angular parameter? All I want is a flat line with tickmarks getting closer and forming regular singularities Commented Feb 24, 2023 at 19:00

PGFMath brings the log10 function.

## Code

\documentclass[tikz]{standalone}
\usetikzlibrary{ext.misc}
\usepackage{siunitx}
\begin{document}
\begin{tikzpicture}
\draw[->] (0,0) -- (right:5.1);
\foreach \RIGHT in {0, ..., 4}
\foreach \STEP in {2, ..., 10}
\draw[
/utils/TeX/ifnum={\STEP=10}{
anchor=north west, inner xsep=0pt
}{
nodes={rotate=90}, anchor=east, very thin
}, shift=(right:\RIGHT)]
({log10(\STEP)},0) + (up:2pt) -- +(down:2pt)
node[scale=.2]{$10^{\num{\fpeval{\STEP*10^{\RIGHT}}}}$};
\end{tikzpicture}
\end{document}


## Output

• Thanks, I think that should work perfectly! Commented Feb 24, 2023 at 19:24