Case 987

A forest cut to one part in ten kept over half its species

a_forest_cut_to_one_part_in_ten_kept_over_half_its_species.eml - A land trust can afford to protect only a tenth of a forest that holds 400 species. Its board reasons that species are spread through the forest, so a tenth of the land holds about a tenth of them, 40 species, and votes the purchase down as not worth the money. How many species a tenth of the forest keeps is computed below.

ok: true — round-trip fixpoint reached (python1 == python2)updated 2026-09-24

EML

eml
# Self-authored for the EML case corpus (no external origin). A land trust can
# afford to protect only a tenth of a forest that holds 400 species. Its board
# reasons that species are spread through the forest, so a tenth of the land
# holds about a tenth of them, 40 species, and votes the purchase down as not
# worth the money. How many species a tenth of the forest keeps is computed
# below.
#
# The reasoning is careful. The survey of 400 species is sound; the reserve
# really would be a tenth of the area; species really are spread through the
# whole forest; and the intent is exactly 'how many species would we save'.
#
# The number of species in an area grows only as about the fourth root of the
# area - most species turn up in the first part surveyed, and each further
# hectare adds a few rarer ones. A tenth of the area keeps 562 per mille of the
# species, 224 of the 400, not 40; half the area keeps 841 per mille. Both
# fourth roots are checked below by raising them back to the fourth power.

400 => species_in_the_whole_forest
100 => reserve_area_per_mille
562 => species_kept_by_a_tenth_per_mille
841 => species_kept_by_a_half_per_mille

int(species_kept_by_a_tenth_per_mille^4 * 1000 / 1000^4) => check_tenth_to_the_fourth_per_mille
int((species_kept_by_a_tenth_per_mille + 1)^4 * 1000 / 1000^4) => check_next_up_to_the_fourth_per_mille
int(species_kept_by_a_half_per_mille^4 * 1000 / 1000^4) => check_half_to_the_fourth_per_mille
int(species_in_the_whole_forest * reserve_area_per_mille / 1000) => species_kept_in_proportion_to_area
int(species_in_the_whole_forest * species_kept_by_a_tenth_per_mille / 1000) => species_kept_by_the_fourth_root
species_kept_by_the_fourth_root - species_kept_in_proportion_to_area => species_the_fourth_root_keeps_beyond_the_proportion
int(species_in_the_whole_forest * species_kept_by_a_half_per_mille / 1000) => species_kept_by_half_the_forest

"species in the whole forest     : " + str(species_in_the_whole_forest) ^0
"reserve                         : " + str(reserve_area_per_mille) + " per mille of the area" ^0
"" ^0
"species kept, a tenth of the area : " + str(species_kept_by_a_tenth_per_mille) + " per mille; to the fourth power " + str(check_tenth_to_the_fourth_per_mille) + " per mille," ^0
"                                  one more to the fourth " + str(check_next_up_to_the_fourth_per_mille) ^0
"species kept, half the area     : " + str(species_kept_by_a_half_per_mille) + " per mille; to the fourth power " + str(check_half_to_the_fourth_per_mille) + " per mille" ^0
"" ^0
"species saved, in proportion to area : " + str(species_kept_in_proportion_to_area) ^0
"species saved, by the fourth root : " + str(species_kept_by_the_fourth_root) ^0
"species the fourth root keeps beyond : " + str(species_the_fourth_root_keeps_beyond_the_proportion) ^0
"species kept by half the forest : " + str(species_kept_by_half_the_forest) ^0
"" ^0

# ---- what the board verified ----

"the a-tenth-for-a-tenth reasoning" ^0
"  survey : " + str(species_in_the_whole_forest) + " species, sound" ^0
"  reserve : a tenth of the area" ^0
"  spread : species throughout the forest" ^0
"  intent : how many species would we save" ^0
"  facts wrong : 0" ^0
"  verdict : A TENTH OF THE FOREST SAVES ABOUT " + str(species_kept_in_proportion_to_area) + " SPECIES, NOT WORTH IT" ^0
"" ^0
"  surveying the whole forest is the part done right here, and it" ^0
"  is why " + str(species_in_the_whole_forest) + " is exactly the number the plan has to protect" ^0
"" ^0

# ---- how species grow with area ----

"most species are found early" ^0
"  a first patch surveyed : already holds most of the common and" ^0
"    widespread species" ^0
"  each further hectare : adds only the rarer ones not yet met" ^0
"  the result : species grow as about the fourth root of area" ^0
"  a tenth of the area : the fourth root of a tenth, " + str(species_kept_by_a_tenth_per_mille) + " per mille," ^0
"    " + str(species_kept_by_the_fourth_root) + " species" ^0
"  half the area : " + str(species_kept_by_a_half_per_mille) + " per mille, " + str(species_kept_by_half_the_forest) + " species" ^0
"  what the proportion assumed : that every species lives in only" ^0
"    its own tenth of the forest" ^0
"" ^0

# ---- what the board got ----

"the vote" ^0
"  believed : about " + str(species_kept_in_proportion_to_area) + " species for the price" ^0
"  actual : about " + str(species_kept_by_the_fourth_root) + ", more than half the forest's" ^0
"  is the survey wrong : no" ^0
"  does a tenth of the land hold a tenth of the species : no;" ^0
"    most species live in any large part of it" ^0
"" ^0

# ---- null control ----

# The same reserve valued by the fourth root of its area instead of by its
# share of the area.
40 => nc_species_saved_read_in_proportion_to_area
224 => nc_species_saved_read_from_the_fourth_root
184 => nc_species_the_fourth_root_keeps

"null control - value the reserve by the fourth root" ^0
"  species saved, in proportion to area : " + str(nc_species_saved_read_in_proportion_to_area) ^0
"  species saved, from the fourth root : " + str(nc_species_saved_read_from_the_fourth_root) ^0
"  species the fourth root keeps : " + str(nc_species_the_fourth_root_keeps) ^0
"  no forest and no survey changed; the count was scaled the way" ^0
"  species actually accumulate with area" ^0
"" ^0

# ---- the rule ----

"what a sound survey and a tenth of the area guarantee" ^0
"  the reserve is a tenth of the forest : exactly" ^0
"  it keeps a tenth of the species : not addressed; species grow" ^0
"    as the fourth root of area, and a tenth of the forest keeps" ^0
"    " + str(species_kept_by_a_tenth_per_mille) + " per mille of them, " + str(species_kept_by_the_fourth_root) + " of " + str(species_in_the_whole_forest) ^0
"" ^0

"a species list is not spread like butter; a small piece of a forest already" ^0
"has most of what the whole one has, and the rest of the area mostly adds the" ^0
"rare ones" ^0
"" ^0

"The reserve is a tenth of the forest - that is right. But species grow as the" ^0
"fourth root of area, so a tenth of the land keeps " + str(species_kept_by_a_tenth_per_mille) + " per mille of them, " + str(species_kept_by_the_fourth_root) ^0
"of " + str(species_in_the_whole_forest) + " species rather than " + str(species_kept_in_proportion_to_area) + ", and half the land keeps " + str(species_kept_by_half_the_forest) + ", until the reserve" ^0
"is valued by how species accumulate with area rather than by its share of it." ^0

Python (deterministic transpilation)

python
species_in_the_whole_forest = 400
reserve_area_per_mille = 100
species_kept_by_a_tenth_per_mille = 562
species_kept_by_a_half_per_mille = 841
check_tenth_to_the_fourth_per_mille = int(species_kept_by_a_tenth_per_mille**4 * 1000 / 1000**4)
check_next_up_to_the_fourth_per_mille = int((species_kept_by_a_tenth_per_mille + 1)**4 * 1000 / 1000**4)
check_half_to_the_fourth_per_mille = int(species_kept_by_a_half_per_mille**4 * 1000 / 1000**4)
species_kept_in_proportion_to_area = int(species_in_the_whole_forest * reserve_area_per_mille / 1000)
species_kept_by_the_fourth_root = int(species_in_the_whole_forest * species_kept_by_a_tenth_per_mille / 1000)
species_the_fourth_root_keeps_beyond_the_proportion = species_kept_by_the_fourth_root - species_kept_in_proportion_to_area
species_kept_by_half_the_forest = int(species_in_the_whole_forest * species_kept_by_a_half_per_mille / 1000)
print("species in the whole forest     : " + str(species_in_the_whole_forest))
print("reserve                         : " + str(reserve_area_per_mille) + " per mille of the area")
print("")
print("species kept, a tenth of the area : " + str(species_kept_by_a_tenth_per_mille) + " per mille; to the fourth power " + str(check_tenth_to_the_fourth_per_mille) + " per mille,")
print("                                  one more to the fourth " + str(check_next_up_to_the_fourth_per_mille))
print("species kept, half the area     : " + str(species_kept_by_a_half_per_mille) + " per mille; to the fourth power " + str(check_half_to_the_fourth_per_mille) + " per mille")
print("")
print("species saved, in proportion to area : " + str(species_kept_in_proportion_to_area))
print("species saved, by the fourth root : " + str(species_kept_by_the_fourth_root))
print("species the fourth root keeps beyond : " + str(species_the_fourth_root_keeps_beyond_the_proportion))
print("species kept by half the forest : " + str(species_kept_by_half_the_forest))
print("")
print("the a-tenth-for-a-tenth reasoning")
print("  survey : " + str(species_in_the_whole_forest) + " species, sound")
print("  reserve : a tenth of the area")
print("  spread : species throughout the forest")
print("  intent : how many species would we save")
print("  facts wrong : 0")
print("  verdict : A TENTH OF THE FOREST SAVES ABOUT " + str(species_kept_in_proportion_to_area) + " SPECIES, NOT WORTH IT")
print("")
print("  surveying the whole forest is the part done right here, and it")
print("  is why " + str(species_in_the_whole_forest) + " is exactly the number the plan has to protect")
print("")
print("most species are found early")
print("  a first patch surveyed : already holds most of the common and")
print("    widespread species")
print("  each further hectare : adds only the rarer ones not yet met")
print("  the result : species grow as about the fourth root of area")
print("  a tenth of the area : the fourth root of a tenth, " + str(species_kept_by_a_tenth_per_mille) + " per mille,")
print("    " + str(species_kept_by_the_fourth_root) + " species")
print("  half the area : " + str(species_kept_by_a_half_per_mille) + " per mille, " + str(species_kept_by_half_the_forest) + " species")
print("  what the proportion assumed : that every species lives in only")
print("    its own tenth of the forest")
print("")
print("the vote")
print("  believed : about " + str(species_kept_in_proportion_to_area) + " species for the price")
print("  actual : about " + str(species_kept_by_the_fourth_root) + ", more than half the forest's")
print("  is the survey wrong : no")
print("  does a tenth of the land hold a tenth of the species : no;")
print("    most species live in any large part of it")
print("")
nc_species_saved_read_in_proportion_to_area = 40
nc_species_saved_read_from_the_fourth_root = 224
nc_species_the_fourth_root_keeps = 184
print("null control - value the reserve by the fourth root")
print("  species saved, in proportion to area : " + str(nc_species_saved_read_in_proportion_to_area))
print("  species saved, from the fourth root : " + str(nc_species_saved_read_from_the_fourth_root))
print("  species the fourth root keeps : " + str(nc_species_the_fourth_root_keeps))
print("  no forest and no survey changed; the count was scaled the way")
print("  species actually accumulate with area")
print("")
print("what a sound survey and a tenth of the area guarantee")
print("  the reserve is a tenth of the forest : exactly")
print("  it keeps a tenth of the species : not addressed; species grow")
print("    as the fourth root of area, and a tenth of the forest keeps")
print("    " + str(species_kept_by_a_tenth_per_mille) + " per mille of them, " + str(species_kept_by_the_fourth_root) + " of " + str(species_in_the_whole_forest))
print("")
print("a species list is not spread like butter; a small piece of a forest already")
print("has most of what the whole one has, and the rest of the area mostly adds the")
print("rare ones")
print("")
print("The reserve is a tenth of the forest - that is right. But species grow as the")
print("fourth root of area, so a tenth of the land keeps " + str(species_kept_by_a_tenth_per_mille) + " per mille of them, " + str(species_kept_by_the_fourth_root))
print("of " + str(species_in_the_whole_forest) + " species rather than " + str(species_kept_in_proportion_to_area) + ", and half the land keeps " + str(species_kept_by_half_the_forest) + ", until the reserve")
print("is valued by how species accumulate with area rather than by its share of it.")

stdout (executed)

text
species in the whole forest     : 400
reserve                         : 100 per mille of the area

species kept, a tenth of the area : 562 per mille; to the fourth power 99 per mille,
                                  one more to the fourth 100
species kept, half the area     : 841 per mille; to the fourth power 500 per mille

species saved, in proportion to area : 40
species saved, by the fourth root : 224
species the fourth root keeps beyond : 184
species kept by half the forest : 336

the a-tenth-for-a-tenth reasoning
  survey : 400 species, sound
  reserve : a tenth of the area
  spread : species throughout the forest
  intent : how many species would we save
  facts wrong : 0
  verdict : A TENTH OF THE FOREST SAVES ABOUT 40 SPECIES, NOT WORTH IT

  surveying the whole forest is the part done right here, and it
  is why 400 is exactly the number the plan has to protect

most species are found early
  a first patch surveyed : already holds most of the common and
    widespread species
  each further hectare : adds only the rarer ones not yet met
  the result : species grow as about the fourth root of area
  a tenth of the area : the fourth root of a tenth, 562 per mille,
    224 species
  half the area : 841 per mille, 336 species
  what the proportion assumed : that every species lives in only
    its own tenth of the forest

the vote
  believed : about 40 species for the price
  actual : about 224, more than half the forest's
  is the survey wrong : no
  does a tenth of the land hold a tenth of the species : no;
    most species live in any large part of it

null control - value the reserve by the fourth root
  species saved, in proportion to area : 40
  species saved, from the fourth root : 224
  species the fourth root keeps : 184
  no forest and no survey changed; the count was scaled the way
  species actually accumulate with area

what a sound survey and a tenth of the area guarantee
  the reserve is a tenth of the forest : exactly
  it keeps a tenth of the species : not addressed; species grow
    as the fourth root of area, and a tenth of the forest keeps
    562 per mille of them, 224 of 400

a species list is not spread like butter; a small piece of a forest already
has most of what the whole one has, and the rest of the area mostly adds the
rare ones

The reserve is a tenth of the forest - that is right. But species grow as the
fourth root of area, so a tenth of the land keeps 562 per mille of them, 224
of 400 species rather than 40, and half the land keeps 336, until the reserve
is valued by how species accumulate with area rather than by its share of it.

Trace event types

eml:run:starteml:assigneml:outputeml:run:done