Prove2Me
Navigate
DiscoverFormalpediaBlogsUsersMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

FFF is a totally ordered group

Proved
CannonFloydParry.exists_biInvariant_linearOrder

by dbenbenn · Sep 15, 2026 · Mathlib 0df444a (Lean v4.33.1)

dynamical-systemsgroup-theorypiecewise-linearthompsons-group

Thompson's group FFF is a totally ordered group: there is a linear order on FFF such that whenever a≤ba \le ba≤b, both ca≤cbca \le cbca≤cb and ac≤bcac \le bcac≤bc hold for every ccc in FFF.

Cannon-Floyd-Parry construct such an order from the set PPP of order positive elements, those f∈Ff \in Ff∈F for which there is a subinterval [a,b][a,b][a,b] of [0,1][0,1][0,1] on which the derivative of fff is less than 111 and with f(x)=xf(x) = xf(x)=x for 0≤x≤a0 \le x \le a0≤x≤a; they check that FFF is the disjoint union of P−1P^{-1}P−1, {1}\{1\}{1} and PPP, that PPP is closed under multiplication, and that PPP is closed under conjugation. They note the result also follows from Brin and Squier.

Formal statement
import Definitions.Def_CannonFloydParry
import Mathlib

namespace CannonFloydParry

theorem exists_biInvariant_linearOrder :
    ∃ l : LinearOrder F, ∀ a b c : F, l.le a b → l.le (c * a) (c * b) ∧ l.le (a * c) (b * c) := by
  sorry

end CannonFloydParry
Source
Cannon, J. W., Floyd, W. J., Parry, W. R., Introductory notes on Richard Thompson's groups, L'Enseignement Mathematique (2) 42 (1996) 215-256, https://doi.org/10.5169/seals-87877, Theorem 4.11, p. 233
Read-back

What the Lean code literally says, in plain math · claude-opus-5

Read-back: the existence of a two-sided invariant total order

This is a rendering, in ordinary mathematical language, of exactly what one declaration asserts. Everything the declaration depends on is expanded here, so that the reader need not consult the source. The declaration takes no arguments of any kind — no universally quantified data, no hidden (implicit) arguments and no structural assumptions. It is a single closed assertion.

The objects involved

The interval. Let

I  =  [0,1]  =  {t∈R:0≤t≤1},I \;=\; [0,1] \;=\; \{t \in \mathbb{R} : 0 \le t \le 1\},I=[0,1]={t∈R:0≤t≤1},

regarded as an ordered set with the order it inherits from R\mathbb{R}R: for x,y∈Ix, y \in Ix,y∈I one has x≤yx \le yx≤y exactly when the corresponding real numbers satisfy x≤yx \le yx≤y.

The maps. By an order isomorphism of III is meant a bijection f:I→If : I \to If:I→I such that for all x,y∈Ix, y \in Ix,y∈I,

x≤y⟺f(x)≤f(y).x \le y \quad\Longleftrightarrow\quad f(x) \le f(y).x≤y⟺f(x)≤f(y).

That is the whole requirement: a bijection of III onto itself which, together with its inverse, preserves the order. No continuity, differentiability or piecewise structure is part of this notion, and no topology on R\mathbb{R}R enters. Write Aut(I)\mathrm{Aut}(I)Aut(I) for the set of all order isomorphisms of III.

The group law. Aut(I)\mathrm{Aut}(I)Aut(I) is a group under composition, with the convention

(f⋅g)(x)  =  f(g(x))for all x∈I,(f \cdot g)(x) \;=\; f\bigl(g(x)\bigr) \qquad \text{for all } x \in I,(f⋅g)(x)=f(g(x))for all x∈I,

so that in a product the right-hand factor acts first. The identity element is the identity map of III, and the inverse of fff is the inverse bijection f−1f^{-1}f−1.

Dyadic numbers. A real number xxx is called dyadic here if

x  =  m2kfor some integer m∈Z and some natural number k∈N.x \;=\; \frac{m}{2^{k}} \quad\text{for some integer } m \in \mathbb{Z} \text{ and some natural number } k \in \mathbb{N}.x=2km​for some integer m∈Z and some natural number k∈N.

The exponent k=0k = 0k=0 is allowed, so every integer — positive, negative or zero — is dyadic, and mmm is an arbitrary integer, so the dyadic numbers here are exactly the usual dyadic rationals (including those outside [0,1][0,1][0,1]).

The piecewise-linearity condition. Say that an order isomorphism fff of III is of Thompson type if the following holds:

There exists a finite set B⊆RB \subseteq \mathbb{R}B⊆R, every element of which is dyadic, such that for all x,y∈Ix, y \in Ix,y∈I with x<yx < yx<y and

(x,y)∩B  =  ∅,(x,y) \cap B \;=\; \varnothing,(x,y)∩B=∅,

there exist an integer n∈Zn \in \mathbb{Z}n∈Z and a real number c∈Rc \in \mathbb{R}c∈R with

f(z)  =  2nz+cfor every z∈I with x≤z≤y.f(z) \;=\; 2^{n} z + c \qquad \text{for every } z \in I \text{ with } x \le z \le y .f(z)=2nz+cfor every z∈I with x≤z≤y.

Several features of this condition are worth spelling out, because the quantifiers include them silently.

  • The slope 2n2^{n}2n ranges over the integer powers of two, negative exponents included and read as genuine reciprocals (2−1=1/22^{-1} = 1/22−1=1/2, 2−3=1/82^{-3} = 1/82−3=1/8); every such slope is positive.
  • The intercept ccc is an arbitrary real number. Nothing in this condition requires the intercepts to be dyadic; only the elements of BBB are required to be dyadic.
  • The set BBB is a finite set of real numbers, not required to lie inside [0,1][0,1][0,1] and not required to be non-empty. The empty set is a permitted choice of BBB, in which case the displayed requirement applies to every pair x<yx < yx<y in III.
  • The set BBB is required to miss only the open interval (x,y)(x,y)(x,y); the endpoints xxx and yyy themselves may belong to BBB. The affine formula, by contrast, is asserted on the closed interval, i.e. at the endpoints as well as inside.
  • The exponent nnn and the intercept ccc are chosen after xxx and yyy, so they may differ from one such interval to another; the condition does not assert a single global formula.
  • The numbers xxx and yyy are quantified over the points of III only, so the condition never tests intervals reaching outside [0,1][0,1][0,1].

The group FFF. Let T⊆Aut(I)\mathcal{T} \subseteq \mathrm{Aut}(I)T⊆Aut(I) be the set of all order isomorphisms of III that are of Thompson type in the above sense, and let

F  =  the subgroup of Aut(I) generated by T,F \;=\; \text{the subgroup of } \mathrm{Aut}(I) \text{ generated by } \mathcal{T},F=the subgroup of Aut(I) generated by T,

that is, literally, the intersection of all subgroups of Aut(I)\mathrm{Aut}(I)Aut(I) that contain T\mathcal{T}T — equivalently, the set of all maps expressible as a composite of finitely many elements of T\mathcal{T}T and inverses of elements of T\mathcal{T}T.

Note that this is a generated subgroup: nothing here asserts that T\mathcal{T}T is already closed under composition and inversion, and consequently an element of FFF is not, on the strength of anything said here, itself of Thompson type. FFF is a group, and it contains the identity map of III, so it is non-empty. In what follows, "element of FFF" means a member of that group, and the product ababab of two elements of FFF is their composite in Aut(I)\mathrm{Aut}(I)Aut(I), again an element of FFF.

What the declaration asserts

There exists a linear order on the set of elements of FFF — call the relation ⪯\preceq⪯ — such that for all elements aaa, bbb, ccc of FFF:

a⪯b⟹( ca⪯cb  and  >ac⪯bc ).a \preceq b \quad\Longrightarrow\quad \bigl(\, c a \preceq c b \ \ \textbf{and}\ \ > a c \preceq b c \,\bigr).a⪯b⟹(ca⪯cb  and  >ac⪯bc).

Here linear order means a relation ⪯\preceq⪯ on the elements of FFF that is

  • reflexive: a⪯aa \preceq aa⪯a for all aaa;
  • transitive: a⪯ba \preceq ba⪯b and b⪯cb \preceq cb⪯c imply a⪯ca \preceq ca⪯c;
  • antisymmetric: a⪯ba \preceq ba⪯b and b⪯ab \preceq ab⪯a imply a=ba = ba=b (equality of elements of FFF, i.e. equality of the underlying maps of III);
  • total: for all a,ba, ba,b, either a⪯ba \preceq ba⪯b or b⪯ab \preceq ab⪯a.

The following points of logical form are part of the assertion and should not be rounded off.

  • The order is existentially quantified, and it is otherwise arbitrary. The assertion is only that some such relation exists. No relationship is required between ⪯\preceq⪯ and any order on the maps themselves — in particular ⪯\preceq⪯ need not be the pointwise comparison a(x)≤b(x)a(x) \le b(x)a(x)≤b(x), nor any order canonically attached to FFF. It is simply some total order on the underlying set of FFF.
  • The invariance is an implication, not an equivalence. What is asserted is that a⪯ba \preceq ba⪯b implies ca⪯cbca \preceq cbca⪯cb and ac⪯bcac \preceq bcac⪯bc; the converse implications are not part of the statement.
  • Both sides at once, with one order. The same single relation ⪯\preceq⪯ is required to be compatible with multiplication on the left and on the right; the conclusion is a conjunction of the two comparisons, not a disjunction, and not two separate orders.
  • The three elements are quantified independently over all of FFF, with no further hypotheses on them; in particular ccc ranges over every element of FFF, including the identity, and aaa, bbb, ccc need not be distinct.
  • Product order. Because a product means "apply the right factor first", cacaca is the map x↦c(a(x))x \mapsto c(a(x))x↦c(a(x)) and acacac is the map x↦a(c(x))x \mapsto a(c(x))x↦a(c(x)). (The condition as a whole is symmetric in the two sides, so it makes the same demand whichever composition convention a reader has in mind, but the individual conjuncts are as just described.)
  • Strict inequality is not mentioned. The statement is phrased entirely with the non-strict relation ⪯\preceq⪯; no claim about ≺\prec≺ appears, and no claim that the order is non-trivial, dense, discrete, or anything else.
  • Nothing is asserted about uniqueness. It is an "there exists", not a "there exists exactly one"; and nothing is said about how many such orders there are or how they are related.

One further piece of fine print: what "a linear order" carries

In the formal system used, "a linear order on a type" is a bundled structure, not merely a relation. Besides the relation ⪯\preceq⪯ and the four axioms above, such a structure also carries:

  • a strict relation ≺\prec≺, tied to ⪯\preceq⪯ by the requirement that a≺ba \prec ba≺b hold exactly when a⪯ba \preceq ba⪯b and not b⪯ab \preceq ab⪯a;
  • binary minimum and maximum operations, required to agree with the order (the minimum of aaa and bbb is aaa if a⪯ba \preceq ba⪯b and bbb otherwise, and dually for the maximum);
  • a three-valued comparison function, required to agree with ≺\prec≺ and equality;
  • decision procedures for the relations ⪯\preceq⪯ and ≺\prec≺ and for equality of elements — that is, effective data resolving each comparison, not merely the classical fact that each comparison holds or fails.

So the existential quantifier of the declaration ranges over such packages, and asserts that one of them exists whose relation ⪯\preceq⪯ satisfies the two-sided invariance displayed above. The invariance condition constrains only the relation ⪯\preceq⪯; the remaining components are constrained only by their own coherence requirements just listed.

Human review
  • Endorsed by Shuze Chen · Sep 15, 2026

  • Endorsed by dbenbenn · Sep 15, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, licensed under Apache 2.0.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTermsJoin SlackJoin Zulip© 2026 Prove2Me