Case 933

The crossed out price sold the same price

the_crossed_out_price_sold_the_same_price.eml - Two shelf tags offer the same item at the same price, 60; one also shows a crossed-out 100 above it. The price is identical, the counts are real, and the tag with the crossed-out number sells nearly twice as many. What the number that is not the price does is computed below.

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

EML

eml
# Self-authored for the EML case corpus (no external origin). Two shelf tags
# offer the same item at the same price, 60; one also shows a crossed-out 100
# above it. The price is identical, the counts are real, and the tag with the
# crossed-out number sells nearly twice as many. What the number that is not
# the price does is computed below.
#
# The test is careful. Both tags carry the same real price; the customers are
# comparable; every sale is counted; and the intent is exactly 'does the price
# sell the item'.
#
# The crossed-out 100 is not a price anyone pays, but it is the first number
# read, and the 60 is then judged as a distance from it rather than on its own -
# an anchor moves the judgement without moving the transaction.

60 => price_on_both_tags
100 => crossed_out_number_on_one_tag
1000 => shoppers_per_tag
50 => bought_from_the_plain_tag
90 => bought_from_the_anchored_tag

int(bought_from_the_plain_tag * 10000 / shoppers_per_tag) => conversion_plain_per_myriad
int(bought_from_the_anchored_tag * 10000 / shoppers_per_tag) => conversion_anchored_per_myriad
conversion_anchored_per_myriad - conversion_plain_per_myriad => conversion_added_by_the_anchor_per_myriad
int(conversion_added_by_the_anchor_per_myriad * 10000 / conversion_plain_per_myriad) => lift_per_myriad
price_on_both_tags - price_on_both_tags => price_difference_between_the_tags
crossed_out_number_on_one_tag - price_on_both_tags => saving_the_anchor_implies

"price on both tags              : " + str(price_on_both_tags) ^0
"price difference between tags   : " + str(price_difference_between_the_tags) ^0
"crossed-out number on one tag   : " + str(crossed_out_number_on_one_tag) + ", a saving of " + str(saving_the_anchor_implies) + " that nobody paid" ^0
"" ^0
"conversion, plain tag           : " + str(conversion_plain_per_myriad) + " per ten thousand" ^0
"conversion, anchored tag        : " + str(conversion_anchored_per_myriad) + " per ten thousand" ^0
"added by the anchor             : " + str(conversion_added_by_the_anchor_per_myriad) + " per ten thousand, a lift of " + str(lift_per_myriad) + " per ten thousand" ^0
"" ^0

# ---- what the test verified ----

"the two-tag test" ^0
"  price : the same real " + str(price_on_both_tags) + " on both" ^0
"  customers : comparable" ^0
"  sales : every one counted" ^0
"  intent : does the price sell the item" ^0
"  price differences : " + str(price_difference_between_the_tags) ^0
"  verdict : SAME PRICE, SAME ITEM" ^0
"" ^0
"  holding the real price identical on both tags is the" ^0
"  part done right here, and it is why the difference in" ^0
"  sales cannot be the price" ^0
"" ^0

# ---- what a number that is not the price does ----

"anchoring" ^0
"  what the plain tag shows : " + str(price_on_both_tags) + ", judged on its own" ^0
"  what the anchored tag shows : " + str(crossed_out_number_on_one_tag) + " first, then " + str(price_on_both_tags) ^0
"  how " + str(price_on_both_tags) + " is judged there : as " + str(saving_the_anchor_implies) + " less than " + str(crossed_out_number_on_one_tag) + ", a bargain" ^0
"  what the customer pays : " + str(price_on_both_tags) + ", either way" ^0
"  so the transaction : identical; the judgement : not" ^0
"" ^0

# ---- what the shop got ----

"the result" ^0
"  extra sales from a number nobody paid : " + str(conversion_added_by_the_anchor_per_myriad) + " per ten thousand of shoppers" ^0
"  is either count wrong : no" ^0
"  did the price sell the item : the price was the same on" ^0
"    both; the frame around it sold the difference" ^0
"" ^0

# ---- null control ----

# The same tags with the crossed-out number replaced by an unrelated figure (a
# product code), so the first number read is not a reference price.
90 => nc_bought_with_a_crossed_out_price
52 => nc_bought_with_an_unrelated_number
38 => nc_sales_the_reference_price_itself_adds

"null control - replace the reference price with an unrelated number" ^0
"  bought, crossed-out reference price : " + str(nc_bought_with_a_crossed_out_price) ^0
"  bought, unrelated number in the same spot : " + str(nc_bought_with_an_unrelated_number) ^0
"  sales the reference price itself adds : " + str(nc_sales_the_reference_price_itself_adds) ^0
"  no price and no item changed; the first number read" ^0
"  stopped being a price to compare against" ^0
"" ^0

# ---- the rule ----

"what an identical price on two tags guarantees" ^0
"  the customer pays the same either way : exactly, real" ^0
"    price, same item" ^0
"  the customer judges the same either way : not addressed;" ^0
"    a crossed-out " + str(crossed_out_number_on_one_tag) + " makes " + str(price_on_both_tags) + " read as a saving of " + str(saving_the_anchor_implies) + ", and" ^0
"    conversion went from " + str(conversion_plain_per_myriad) + " to " + str(conversion_anchored_per_myriad) + " per ten thousand" ^0
"" ^0

"a number seen first becomes the ruler for the numbers seen next, whether or" ^0
"not it is a price, a fact, or a thing anyone would pay; the transaction is" ^0
"the same and the mind that agreed to it was standing somewhere else" ^0
"" ^0

"Both tags carry the same real price, " + str(price_on_both_tags) + " - the transaction is identical. But one" ^0
"shows a crossed-out " + str(crossed_out_number_on_one_tag) + " first, so " + str(price_on_both_tags) + " is judged as " + str(saving_the_anchor_implies) + " off rather than on its own," ^0
"and conversion rose from " + str(conversion_plain_per_myriad) + " to " + str(conversion_anchored_per_myriad) + " per ten thousand, a " + str(lift_per_myriad) + "-per-ten-thousand lift" ^0
"from a number nobody paid, until the reference price was taken off the tag." ^0

Python (deterministic transpilation)

python
price_on_both_tags = 60
crossed_out_number_on_one_tag = 100
shoppers_per_tag = 1000
bought_from_the_plain_tag = 50
bought_from_the_anchored_tag = 90
conversion_plain_per_myriad = int(bought_from_the_plain_tag * 10000 / shoppers_per_tag)
conversion_anchored_per_myriad = int(bought_from_the_anchored_tag * 10000 / shoppers_per_tag)
conversion_added_by_the_anchor_per_myriad = conversion_anchored_per_myriad - conversion_plain_per_myriad
lift_per_myriad = int(conversion_added_by_the_anchor_per_myriad * 10000 / conversion_plain_per_myriad)
price_difference_between_the_tags = price_on_both_tags - price_on_both_tags
saving_the_anchor_implies = crossed_out_number_on_one_tag - price_on_both_tags
print("price on both tags              : " + str(price_on_both_tags))
print("price difference between tags   : " + str(price_difference_between_the_tags))
print("crossed-out number on one tag   : " + str(crossed_out_number_on_one_tag) + ", a saving of " + str(saving_the_anchor_implies) + " that nobody paid")
print("")
print("conversion, plain tag           : " + str(conversion_plain_per_myriad) + " per ten thousand")
print("conversion, anchored tag        : " + str(conversion_anchored_per_myriad) + " per ten thousand")
print("added by the anchor             : " + str(conversion_added_by_the_anchor_per_myriad) + " per ten thousand, a lift of " + str(lift_per_myriad) + " per ten thousand")
print("")
print("the two-tag test")
print("  price : the same real " + str(price_on_both_tags) + " on both")
print("  customers : comparable")
print("  sales : every one counted")
print("  intent : does the price sell the item")
print("  price differences : " + str(price_difference_between_the_tags))
print("  verdict : SAME PRICE, SAME ITEM")
print("")
print("  holding the real price identical on both tags is the")
print("  part done right here, and it is why the difference in")
print("  sales cannot be the price")
print("")
print("anchoring")
print("  what the plain tag shows : " + str(price_on_both_tags) + ", judged on its own")
print("  what the anchored tag shows : " + str(crossed_out_number_on_one_tag) + " first, then " + str(price_on_both_tags))
print("  how " + str(price_on_both_tags) + " is judged there : as " + str(saving_the_anchor_implies) + " less than " + str(crossed_out_number_on_one_tag) + ", a bargain")
print("  what the customer pays : " + str(price_on_both_tags) + ", either way")
print("  so the transaction : identical; the judgement : not")
print("")
print("the result")
print("  extra sales from a number nobody paid : " + str(conversion_added_by_the_anchor_per_myriad) + " per ten thousand of shoppers")
print("  is either count wrong : no")
print("  did the price sell the item : the price was the same on")
print("    both; the frame around it sold the difference")
print("")
nc_bought_with_a_crossed_out_price = 90
nc_bought_with_an_unrelated_number = 52
nc_sales_the_reference_price_itself_adds = 38
print("null control - replace the reference price with an unrelated number")
print("  bought, crossed-out reference price : " + str(nc_bought_with_a_crossed_out_price))
print("  bought, unrelated number in the same spot : " + str(nc_bought_with_an_unrelated_number))
print("  sales the reference price itself adds : " + str(nc_sales_the_reference_price_itself_adds))
print("  no price and no item changed; the first number read")
print("  stopped being a price to compare against")
print("")
print("what an identical price on two tags guarantees")
print("  the customer pays the same either way : exactly, real")
print("    price, same item")
print("  the customer judges the same either way : not addressed;")
print("    a crossed-out " + str(crossed_out_number_on_one_tag) + " makes " + str(price_on_both_tags) + " read as a saving of " + str(saving_the_anchor_implies) + ", and")
print("    conversion went from " + str(conversion_plain_per_myriad) + " to " + str(conversion_anchored_per_myriad) + " per ten thousand")
print("")
print("a number seen first becomes the ruler for the numbers seen next, whether or")
print("not it is a price, a fact, or a thing anyone would pay; the transaction is")
print("the same and the mind that agreed to it was standing somewhere else")
print("")
print("Both tags carry the same real price, " + str(price_on_both_tags) + " - the transaction is identical. But one")
print("shows a crossed-out " + str(crossed_out_number_on_one_tag) + " first, so " + str(price_on_both_tags) + " is judged as " + str(saving_the_anchor_implies) + " off rather than on its own,")
print("and conversion rose from " + str(conversion_plain_per_myriad) + " to " + str(conversion_anchored_per_myriad) + " per ten thousand, a " + str(lift_per_myriad) + "-per-ten-thousand lift")
print("from a number nobody paid, until the reference price was taken off the tag.")

stdout (executed)

text
price on both tags              : 60
price difference between tags   : 0
crossed-out number on one tag   : 100, a saving of 40 that nobody paid

conversion, plain tag           : 500 per ten thousand
conversion, anchored tag        : 900 per ten thousand
added by the anchor             : 400 per ten thousand, a lift of 8000 per ten thousand

the two-tag test
  price : the same real 60 on both
  customers : comparable
  sales : every one counted
  intent : does the price sell the item
  price differences : 0
  verdict : SAME PRICE, SAME ITEM

  holding the real price identical on both tags is the
  part done right here, and it is why the difference in
  sales cannot be the price

anchoring
  what the plain tag shows : 60, judged on its own
  what the anchored tag shows : 100 first, then 60
  how 60 is judged there : as 40 less than 100, a bargain
  what the customer pays : 60, either way
  so the transaction : identical; the judgement : not

the result
  extra sales from a number nobody paid : 400 per ten thousand of shoppers
  is either count wrong : no
  did the price sell the item : the price was the same on
    both; the frame around it sold the difference

null control - replace the reference price with an unrelated number
  bought, crossed-out reference price : 90
  bought, unrelated number in the same spot : 52
  sales the reference price itself adds : 38
  no price and no item changed; the first number read
  stopped being a price to compare against

what an identical price on two tags guarantees
  the customer pays the same either way : exactly, real
    price, same item
  the customer judges the same either way : not addressed;
    a crossed-out 100 makes 60 read as a saving of 40, and
    conversion went from 500 to 900 per ten thousand

a number seen first becomes the ruler for the numbers seen next, whether or
not it is a price, a fact, or a thing anyone would pay; the transaction is
the same and the mind that agreed to it was standing somewhere else

Both tags carry the same real price, 60 - the transaction is identical. But one
shows a crossed-out 100 first, so 60 is judged as 40 off rather than on its own,
and conversion rose from 500 to 900 per ten thousand, a 8000-per-ten-thousand lift
from a number nobody paid, until the reference price was taken off the tag.

Trace event types

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