Research Notes

Unfolding: Operation

iro-full-0059

La Lumière ne se plie pas pour nous. Light Doesn't Bend (Fold) for Us

Generative tools and AI creativity

I want to use this experiment to explain something concrete about AI-generated images and AI creativity.

It began with a simple geometric drawing, but the drawing became a way of comparing how different systems understand and transform the same idea.

iro-web-0067

The broader process comes from my 2024 Huuuumans project, where I have been moving between Turtle Geometry, creative coding, Python, procedural 3D, vector drawing, AxiDraw, watercolor, animation, sound and AI. I describe a shape in Turtle Graphics, reconstruct it mathematically as an SVG, turn it into a three-dimensional object, extrude it, twist it and slice it. I send vectors to a drawing machine and bring them back onto paper. I intervene with watercolor. And I give the same material to a generative AI and ask it to make an image. These systems do not do the same thing. What happens when an idea moves from one system into another?

Huuuumans, 2024.

1. What is human & AI creativity?

Let’s say it’s about making connections that weren’t supposed to be connected. But what kind of connection? And what verb captures that process? The drawings I see in my head spark deep curiosity, and my child’s heart views them as maps to access invisible worlds. Flat world representations are just one way to play. I love working with 3D and computer graphics. What fascinates me most is the shift between dimensions. How do I fold paper to discover new routes and reveal multiple perspectives? How do I create volume from points and curves? iro-full-0060

I imagine creativity as the act of un/folding ideas. In 3D, using Houdini, I can fold a grid in different ways: manipulating resolution, creating more or fewer folds, adjusting the stiffness or elasticity between points. In Huuuumans' world, abstraction is one surface to bend, transition another. If I want the process less rigid, I increase the resolution and explore the invisible connections between the points of each concept. But too much resolution, and the edges disappear. That's slop! But too much resolution, and the edges disappear. A mesh with too many points stops bending: it just smooths. No hinge, no fold, no place where one thing becomes another. Just an average of everything around it.

2. The experiment in La Lumière ne se plie pas pour nous. Light Doesn't Bend (Fold) for Us.

The easiest way to begin is with three images: one real page, one fake AI image, one fake exact AI image.

iro-web-0063

iro-full-0064

iro-full-0062

The first is a photograph of a real page from Turtle Geometry. It contains code, diagrams and a very particular graphic language: black lines, simple typography, technical drawings, an off-white page and a precise relationship between instruction and result.

This is my visual reference. I then gave this reference to a generative image model and asked it to create a new page in this visual language, with the title La Lumière ne se plie pas pour nous and with three of my own constructions:

I also gave the geometry and the corresponding code. It looked like a real book page. The typography, the paper, the hierarchy, the diagrams looked mathematicalicious, the code too. But the geometry was wrong. The nine circles were not constructed correctly. The rounded cross was not the exact rounded cross. The relationship between the square and the cross was wrong. And the Turtle code itself was not correct.

Visually, the AI had understood the page. Structurally, it had not.

3. What was the AI actually doing?

The AI image generator was not executing my drawing instructions in the same way that a Turtle interpreter or SVG renderer would. It was interpreting them. It recognized a visual situation: old technical book + mathematical diagram + Turtle Graphics + circles + code + geometric construction. From those relationships it generated a plausible image. This gives me a simple distinction about different operations:

Generative AI → visual interpretation

while:

Turtle / SVG → explicit construction

4. What does “deterministic” mean here?

To understand the difference, I reconstructed the geometry using SVG.

If I write:

<circle cx="200" cy="200" r="100"/>

I am not asking the computer:

Can you make something that looks like a circle around here?

I am giving it explicit geometric information:

centre x = 200
centre y = 200
radius   = 100

The circle is defined mathematically. If I render the same SVG again under the same conditions, the geometry remains the same. A deterministic system follows explicitly defined rules and parameters. Given the same instructions, those geometric relationships are reproduced. The machine is not interpreting what I might mean by a radius of 100. It uses a radius of 100. If two circles have radius R and their centres are separated by 2R, they are tangent. The computer does not need to decide whether they look close enough. The relationship is encoded in the construction.

deterministic → the rule determines the construction

Generative AI operates differently. Its output is produced through a learned probabilistic model. The same or similar prompt can lead to different visual realizations. More importantly for this experiment, it can preserve the semantic and visual idea of the instruction without preserving its exact mathematical structure.

If I need nine circles to be mathematically tangent, interpretation is a problem. I want the deterministic system.

If I want to see how those nine circles might mutate, acquire another atmosphere, enter another visual language or suggest something I had not anticipated, interpretation can become useful.

One system gives me precision and repeatability. The other gives me interpretation and variation.

The creative question therefore becomes:

At which moment do I need the machine to preserve the rule, and at which moment do I want it to interpret it?

5. Vector & Pixel

The experiment also makes another technical distinction visible: vector-based images and pixel-based images. These terms are related to the experiment. An SVG is a vector format. It describes an image through geometric information: points, coordinates, lines, curves, circles, radii, paths.

A circle can be an abstract mathematical object:

<circle cx="200" cy="200" r="100"/>

It is only rasterized into pixels when the computer needs to display it on a screen or print it. A photograph, by contrast, is a raster or pixel-based image. It is a grid of coloured values.

A conventional AI-generated image is also generally delivered as a raster image. A circle in that image can therefore simply be a configuration of pixels that visually resembles a circle. It does not have to exist in the image as an explicit mathematical object with a centre and radius.

So there are actually two different axes here:

VECTOR ↔ RASTER describes how an image is represented.

DETERMINISTIC ↔ GENERATIVE / PROBABILISTIC describes how a result is produced.

6. Appearance is not the same as structure

The AI-generated page demonstrates that a machine can produce the appearance of precision without necessarily preserving the structure that produces that precision.

The fake page looked mathematical. The code looked computational. The diagrams looked geometric.

But “looking mathematical” and “being mathematically constructed” are not the same thing. This is useful for understanding AI-generated imagery more generally.

A generative image model is powerful at relationships of appearance:

What normally appears beside this? What kind of typography belongs here? What does a technical drawing usually look like? What visual structure makes this image recognizable?

That capacity is exactly why the fake book page was so convincing. But if I need an exact construction, I need another system.

7. The nine circles

To understand what the AI failed to preserve, I have to return to the actual geometry. I began with a square and nine equal circles arranged in a 3 × 3 structure.

For the construction I used: square side = 400 and therefore: R = square side / 4 = 100 The circle centres are separated by 2R = 200. They can therefore be positioned as:

(0,0)     (200,0)     (400,0)

(0,200)   (200,200)   (400,200)

(0,400)   (200,400)   (400,400)

All nine circles have:

R = 100

Adjacent circles therefore touch exactly.

8. Finding the rounded cross

iro-web-0061 In the atelier, 2026.

From this nine-circle construction, I started following selected circular paths. This produced another shape: the rounded cross. The cross emerged from the geometry of the circles. Its boundary can be understood through alternating circular arcs: 180° outward arc → 90° inward arc and this relationship repeats four times around the form.

So there is a transformation: nine circles → selected arcs → rounded cross. The same radius controls the construction. I got curious about what shape is already hidden inside this system.

9. Returning to Turtle Graphics

This connects back to Turtle Geometry. In Turtle Graphics, I do not describe the final image as an object. I describe a movement. The turtle moves forward. It turns. It follows an arc. It repeats. A drawing emerges from a procedure. For the rounded cross, the essential operation can become remarkably simple:

180° outward arc
90° inward arc
repeat 4 times

The drawing exists simultaneously as several things: an image, a geometric construction, a sequence of movements, a piece of code. The visible shape is only one manifestation of the underlying rule.

10. Huuuumans process

This way of thinking comes directly from the process I developed in Huuuumans. There, I began with Turtle Geometry and creative coding, translated Logo-like procedures into Python, moved flat drawings into procedural 3D structures, flattened those structures again into vectors, sent them to an AxiDraw drawing machine, and intervened on the resulting physical drawings with watercolor. The work continuously moved between digital and physical states and between machine precision and human intervention.

Experiment in Houdini, 2024

iro-full-0066

iro-full-0065

11. Creative AI

Turtle already gives me procedures. SVG gives me precision. Python gives me computation. 3D software gives me spatial transformation. A drawing machine gives me physical execution. Watercolor gives me material behaviour and instability. So what is particular about generative AI?

AI introduces probabilistic interpretation.

It can take relationships that I have already established and reinterpret them through another visual logic. It can preserve some things and distort others. It can connect visual concepts that were not explicitly encoded together. It can produce variations I did not specify.

And it can misunderstand me.

12. Is AI non-deterministic?

In practical use, generative image systems are generally non-deterministic or stochastic: generation involves probabilistic choices, so repeated generations can produce different results rather than one uniquely prescribed image. But AI creativity is only randomness. Randomness alone is not creativity. The system operates in a learned space of visual relationships. Its variations are informed by patterns learned during training and conditioned by the prompt, references and other inputs. So the machine is not simply rolling dice over pixels. It is generating within a space of learned possibilities. I can constrain the system through a prompt. But I do not specify every pixel. There is a space between my instruction and the result. That space is where interpretation happens. With SVG, I can say exactly where the circle is. With generative AI, I can describe what I want the image to become, but the system participates in determining how that request is visually understood.

13. Precision and uncertainty are both materials

Precision and uncertainty do not have to oppose each other in te creative process. They can both become materials. I want to know which kind of system I am using. If I expect generative AI to behave like CAD or SVG, I may become frustrated by its inaccuracies. If I understand that its strength lies elsewhere, those differences become useful. Likewise, if I expect deterministic geometry to surprise me in exactly the way a generative model does, I am asking it to perform a different operation from the one it was designed to perform. The creative possibility comes from moving between them.

14. The rounded cross as a test object

The rounded cross becomes useful because it is simple enough to recognize but precise enough to measure. I know exactly how it should be constructed. That gives me a reference against which I can observe transformation. In AI, I can observe how its visual identity survives even when its exact geometry does not. The form becomes like a test object travelling through different computational systems. And each system shows something about itself through what it does to the object.

15. References: the deterministic constructions

These references are different from the AI-generated page. They are not visual approximations of the construction. They are the construction.

NINE_CIRCLES — SVG

<svg xmlns="http://www.w3.org/2000/svg"
     viewBox="-110 -110 620 620"
     width="620" height="620">

  <title>Nine Circles</title>

  <g fill="none" stroke="black" stroke-width="3">

    <circle cx="0"   cy="0"   r="100"/>
    <circle cx="200" cy="0"   r="100"/>
    <circle cx="400" cy="0"   r="100"/>

    <circle cx="0"   cy="200" r="100"/>
    <circle cx="200" cy="200" r="100"/>
    <circle cx="400" cy="200" r="100"/>

    <circle cx="0"   cy="400" r="100"/>
    <circle cx="200" cy="400" r="100"/>
    <circle cx="400" cy="400" r="100"/>

  </g>
</svg>
TO RIGHTARC :R :A
  REPEAT :A [
    RIGHT .5
    FORWARD (2 * :R * SIN .5)
    RIGHT .5
  ]
END

TO CIRCLEAT :X :Y :R
  PENUP
  SETXY (:X - :R) :Y
  SETHEADING 0
  PENDOWN
  RIGHTARC :R 360
END

TO NINE_CIRCLES :R
  CIRCLEAT (-2*:R) ( 2*:R) :R
  CIRCLEAT 0       ( 2*:R) :R
  CIRCLEAT ( 2*:R) ( 2*:R) :R

  CIRCLEAT (-2*:R) 0 :R
  CIRCLEAT 0        0 :R
  CIRCLEAT ( 2*:R) 0 :R

  CIRCLEAT (-2*:R) (-2*:R) :R
  CIRCLEAT 0        (-2*:R) :R
  CIRCLEAT ( 2*:R) (-2*:R) :R
END

For R = 100, adjacent centres are separated by 200 = 2R, so the circles are exactly tangent.

ROUNDED_CROSS — SVG

<svg xmlns="http://www.w3.org/2000/svg"
     viewBox="-110 -110 620 620"
     width="620" height="620">

  <title>Rounded Cross</title>

  <path
    d="
      M 100 0

      A 100 100 0 0 1 300 0
      A 100 100 0 0 0 400 100

      A 100 100 0 0 1 400 300
      A 100 100 0 0 0 300 400

      A 100 100 0 0 1 100 400
      A 100 100 0 0 0 0 300

      A 100 100 0 0 1 0 100
      A 100 100 0 0 0 100 0

      Z
    "
    fill="none"
    stroke="black"
    stroke-width="3"
  />
</svg>
TO RIGHTARC :R :A
  REPEAT :A [
    RIGHT .5
    FORWARD (2 * :R * SIN .5)
    RIGHT .5
  ]
END

TO LEFTARC :R :A
  REPEAT :A [
    LEFT .5
    FORWARD (2 * :R * SIN .5)
    LEFT .5
  ]
END

TO ROUNDED_CROSS :R
  PENUP
  SETXY (-1*:R) (2*:R)
  SETHEADING 0
  PENDOWN

  REPEAT 4 [
    RIGHTARC :R 180
    LEFTARC  :R 90
  ]
END

The whole contour comes from one repeated relationship:

180° outward arc
90° inward arc
× 4

ROUNDED_CROSS_SQUARE — SVG

<svg xmlns="http://www.w3.org/2000/svg"
     viewBox="-110 -110 620 620"
     width="620" height="620">

  <title>Rounded Cross with Square</title>

  <g fill="none"
     stroke="black"
     stroke-width="3">

    <rect
      x="0"
      y="0"
      width="400"
      height="400"
    />

    <path d="
      M 100 0

      A 100 100 0 0 1 300 0
      A 100 100 0 0 0 400 100

      A 100 100 0 0 1 400 300
      A 100 100 0 0 0 300 400

      A 100 100 0 0 1 100 400
      A 100 100 0 0 0 0 300

      A 100 100 0 0 1 0 100
      A 100 100 0 0 0 100 0

      Z
    "/>

  </g>
</svg>

Using the same RIGHTARC, LEFTARC, and ROUNDED_CROSS procedures:

TO SQUARE :R
  PENUP
  SETXY (-2*:R) (2*:R)
  SETHEADING 90
  PENDOWN

  REPEAT 4 [
    FORWARD (4*:R)
    RIGHT 90
  ]
END

TO ROUNDED_CROSS_SQUARE :R
  SQUARE :R
  ROUNDED_CROSS :R
END

For R = 100:

circle / arc radius = 100
square side         = 400