# Multiplying shapes: 24-shape atlas

Prepared 5 September 2026. The chosen operation is the Cartesian product of filled planar regions. “Perfect triangle” is interpreted as equilateral.

## The operation and what the pictures mean

If A and B are filled 2D regions, A × B = {(a1,a2,b1,b2): (a1,a2) in A, (b1,b2) in B}. Each point can vary in four independent directions, so the product has dimension 4. For convex polytopes this is the standard prism product; Margaret Readdy's lecture notes give the definition and dimension rule: https://www.math.ias.edu/files/wam/mreaddylect2_0.pdf

There is no single universally intended “multiplication of shapes.” Other definitions include coordinatewise products, complex-number set products, sweeps, and Minkowski addition. They produce different answers. A Minkowski sum adds vectors; it does not generally add dimensions. A sweep needs a specified path, frame and scale. A pyramid is not automatically the product of a square and a triangle.

The atlas and interactive viewer show 4D boundary networks after a specified linear projection to 3D and then a perspective camera to the page. They do not show complete filled solids or complete 3D boundaries. Some drawn edges can lie inside the 3D shadow. Crossings and missing-looking corners need not represent intersections or missing corners in the original 4D object. Polygonal convex pairs show their exact 4D edge graph. Curves are approximated with finite polygons; resulting samples must not be interpreted as true corners of a smooth shape. For concave and holed regions, the displayed network is a subset of their product boundary, not a convex hull or a topological certificate. In particular, the four drawn networks for annulus × annulus do not mean the full product is disconnected.

## Scope

There is no finite complete list of 2D shapes. Polygons alone allow any integer number of sides from three upwards, continuously varying side lengths and angles, and both convex and concave forms. General planar sets can also be disconnected, contain multiple holes, or have fractal boundaries.

The catalog uses 24 representative filled regions: four triangle types; six quadrilateral types; regular polygons with five through ten sides; disk, ellipse, semicircle and stadium; a simple five-point star, L-shape, crescent and annulus. These names are overlapping categories, not a disjoint mathematical taxonomy. The star is a filled simple concave ten-sided outline, not a self-intersecting pentagram. Sizes are normalized to a common bounding circumradius, so different polygon factors do not necessarily have equal edge lengths.

All 24 × 24 = 576 ordered pairings are shown. Swapping factors gives 300 pairings including self-pairs up to factor order, not necessarily 300 geometrically distinct outcomes. Swapping the two coordinate pairs preserves distances in 4D, but a fixed projection can make the two orders look different.

## General polygon rule, derived by counting

Let A be a nondegenerate convex m-gon and B a nondegenerate convex n-gon. Every nonempty face of A × B is the product of one nonempty face of A with one of B, and its dimension is the sum of theirs.

* Corners: a corner of A paired with a corner of B, giving mn.
* Edges: an A edge with a B corner, or an A corner with a B edge, giving mn + mn = 2mn.
* Two-dimensional faces: an A edge with a B edge gives mn rectangles; A with a B corner gives n copies of A; an A corner with B gives m copies of B. Total: mn + m + n.
* Three-dimensional boundary cells: an A edge with all of B gives m B-prisms; all of A with a B edge gives n A-prisms. Total: m + n.
* There is one four-dimensional body.

This makes the face-count polynomial a literal multiplication:

    (m + m t + t²)(n + n t + t²)
      = mn + 2mn t + (mn + m + n)t² + (m + n)t³ + t⁴.

The coefficients count faces of dimensions 0, 1, 2, 3 and 4. The empty face is omitted. The alternating sum for the boundary is V − E + F − C = 0. This is a count identity, not a unique geometric fingerprint: shapes with the same counts can still have different lengths, angles, symmetries and even combinatorial structure in broader polytope classes.

The square–triangle instance and the polynomial construction also appear in Thomas Ruen's paper, section 3.3: https://ejmt.mathandtech.org/Contents/eJMT_v18n1p5.pdf

| Factors | Vertices | Edges | 2D faces | 3D cells | Result |
|---|---:|---:|---:|---:|---|
| Triangle × triangle | 9 | 18 | 15 | 6 | 3,3-duoprism |
| Square × triangle | 12 | 24 | 19 | 7 | 4,3-duoprism |
| Square × square | 16 | 32 | 24 | 8 | Tesseract when the squares have equal side length |
| Pentagon × triangle | 15 | 30 | 23 | 8 | 5,3-duoprism |
| Pentagon × pentagon | 25 | 50 | 35 | 10 | 5,5-duoprism |
| Hexagon × hexagon | 36 | 72 | 48 | 12 | 6,6-duoprism |

For square × equilateral triangle, the boundary has four triangular prisms and three square prisms. The latter are cubes if the square and triangle have the same edge length. The 19 faces consist of four triangles, three original-square faces and twelve edge-product rectangles. The atlas's size normalization does not impose that equal-edge condition.

## A concrete answer in three dimensions

Although the full product is 4D, a specified projection can yield a familiar 3D solid. Take A = [-1,1]² and B = conv{(-1,0),(1,0),(0,√3)}, an equilateral triangle of side length 2. Project by

    P(a1,a2,b1,b2) = (a1, a2+b1, b2).

The image is [-1,1] times the trapezoid with (y,z) corners (-2,0), (2,0), (1,√3), (-1,√3). Thus this particular 3D shadow is a trapezoidal prism, with 8 visible extreme corners. The underlying 4D product still has 12 corners. The omitted distinction is the kernel direction (0,1,-1,0): moving a2 up while moving b1 down by the same amount leaves the shadow unchanged, where the movement remains inside the input shapes. The collapsed direction need not have coordinate value zero. Other projections can have different shadow geometry.

A true 3D Cartesian-product construction uses a filled 2D region and a 1D segment: square × segment gives a rectangular prism, triangle × segment a triangular prism, and disk × segment a cylinder. A square × segment is a cube only when the lengths agree.

## Patterns across the larger family

1. Independent dimensions add. All filled regions in this catalog produce 4D products. This claim concerns these ordinary regions with nonempty interiors; it is not a blanket statement about every notion of dimension for arbitrary fractal sets.
2. Vertex counts multiply for convex polygon products. Products involving four-cornered convex shapes have the same count pattern even when the inputs are a square, rectangle, rhombus, parallelogram, trapezoid or kite.
3. Connectivity retains the factors. The graph for convex m-gon × n-gon is the Cartesian graph product C_m □ C_n, a grid with both directions cyclic; every vertex has four incident edges. The full 4D body's boundary is not a torus merely because this graph can be drawn on one.
4. Nonempty convex factors give a convex product. Conversely, a product with a nonconvex factor is nonconvex, since coordinate projection of a convex product would force the factors to be convex. Do not replace a concave product by a convex hull.
5. Four-dimensional volume multiplies: Vol_4(A × B) = Area(A) Area(B). This follows by integrating the indicator function 1_A(a)1_B(b). Volume units are length⁴, not length³. Disk × disk has volume π²r²s²; it is a 4D product of disks, not a 3D ball.
6. Increasing the number of sides of an inscribed regular polygon approaches a disk. Its products approach corresponding disk products, even though the finite polygon vertex count keeps increasing. The polygon counts should not be assigned to the smooth limit.
7. Filling versus outline changes the object. A circle outline is intrinsically 1D. Two circle outlines have a 2D product topologically equivalent to a torus; the familiar doughnut is a 3D embedding of that topology, not the filled disk × disk product. An explicit proof in homotopy type theory is at https://arxiv.org/abs/1510.03918. More generally, two simple closed polygon outlines also have torus topology, despite corners.
8. Holes survive in the product's topology even when a projection hides them. All catalog factors except the annulus are topological closed disks. A product of two such factors is a topological 4-ball. Annulus × disk has the form S¹ × [0,1] × D², hence is homeomorphic to S¹ × D³. Annulus × annulus is homeomorphic to T² × [0,1]². These classifications follow by writing an annulus as S¹ × [0,1]; the drawings alone do not prove them. The recorded Euler characteristic is multiplicative and equals 1 for disk-like × disk-like, 0 if either factor is an annulus; it does not distinguish the last two cases.

## What this means for factorized computation

The m × n corner array can be represented exactly by storing the two input vertex lists and the product rule. That can replace an explicit mn-entry coordinate table with m+n input vertices, plus their connectivity. It is a real saving for a genuinely separable product. If an operation requires visiting all mn combinations, its output or evaluation cost can still be proportional to mn. Coupling constraints between factors can destroy separability. The pattern is established product geometry; it does not by itself prove a new physical dimension or universal algorithmic speedup.

## Reproducibility and limits

`python analyze.py` regenerates the catalog, pair-analysis.csv, checks.json and two atlas images. Dependencies: NumPy, SciPy, Matplotlib. The original run used NumPy 2.3.5 and SciPy 1.17.0. `explorer.html` is a self-contained viewer; its code contains the same catalog and projection rule.

For every one of the 16 × 16 = 256 convex polygon pairs, the script constructs all 4D points and a SciPy convex hull, groups coplanar simplices into supporting facets, intersects facet vertex sets to recover all faces, and classifies dimensions by numerical rank. This face enumeration is independent of the expected formulas. It compares all five face counts, graph edge totals and hull hypervolume with the area-product identity. There were no mismatches. Maximum relative hypervolume discrepancy: 1.56 × 10^-15. This is numerical corroboration; the counting argument supplies the general proof.

Curved and concave pairs are generated and classified but are not subjected to that convex-hull face-count test. Finite corners introduced by curve sampling are deliberately omitted from the result columns. The full browser preview was blocked by the environment's URL policy; JavaScript syntax was checked locally, and static catalog and atlas images were inspected. Interaction layout was not verified in an actual browser.

The saved atlas uses rotations in coordinate planes (a1,b2) by 36°, (a2,b1) by 27°, and (b1,b2) by 19°, in that order; it drops the fourth resulting coordinate, applies camera yaw 28° and pitch −18°, then perspective with camera distance 5. The interactive controls vary the first 4D rotation and camera yaw. The gallery stays at the common default orientation for comparison.

The CSV also gives the actual 3D shadow hull's vertex, edge and face counts at that fixed projection for all 256 convex polygon pairings. These are measured independently after removing non-extreme projected samples; they obey V − E + F = 2. For example, the displayed square × triangle shadow has 11 extreme vertices, 19 edges and 10 faces, while square × square has 14 extreme vertices, 24 edges and 12 faces. Those are shadow counts, not the original 4D counts and not universal counts for every projection. The special trapezoidal-prism shadow above uses a different projection.
