drafting "Prediction Markets Are Not a Drop-In Replacement for Concepts"
authorZack M. Davis <[email protected]>
Sat, 12 Oct 2024 18:04:46 +0000 (11:04 -0700)
committerZack M. Davis <[email protected]>
Sat, 12 Oct 2024 18:04:46 +0000 (11:04 -0700)
content/drafts/prediction-markets-are-not-a-drop-in-replacement-for-concepts.md [new file with mode: 0644]

diff --git a/content/drafts/prediction-markets-are-not-a-drop-in-replacement-for-concepts.md b/content/drafts/prediction-markets-are-not-a-drop-in-replacement-for-concepts.md
new file mode 100644 (file)
index 0000000..43ebb26
--- /dev/null
@@ -0,0 +1,62 @@
+Title: Prediction Markets Are Not a Drop-In Replacement for Concepts
+Date: 2024-10-14 20:00
+Category: commentary
+Tags: Eliezer Yudkowsky, literary critcism, worldbuilding, prediction markets
+Status: draft
+
+Eliezer Yudkowsky [comments on "Comment on a Scene from _Planecrash_: 'Crisis of Faith'"](http://unremediatedgender.space/2022/Jun/comment-on-a-scene-from-planecrash-crisis-of-faith/#isso-583):
+
+> Keltham wouldn't be averse to suggesting that there be prediction markets about military performance, not just predictions based on height. If there's more information to be gained from measuring biological sex than by just measuring height, it'll show up in the military prediction markets. But Keltham knows the uneducated soul to whom he is speaking, does not know what a prediction market is.
+>
+> And after you've added in prediction markets to actually get all of the information that anybody has, what remains to be gained by creating a law that asymmetrically treats different sapient beings in a way based not on predicted outcomes?
+
+Good question. I'd like to generalize it: in the absence of a reason why "creating a law" and "sapient beings" would change the answer, we can ask: when making a decision about some entities X<sub>i</sub>, after you've added in prediction markets to get all of the information that anybody has, what remains to be gained by using a decision procedure P that asymmetrically treat the X<sub>i</sub> in a way based not on predicted outcomes?
+
+The answer is: nothing—but with two major caveats having to do with how the power of prediction markets is precisely that they're agnostic about how traders make decisions: we assume that whatever the winning decision is, greedy traders have an incentive to figure it out.
+
+Nothing is gained—_if_ you already happen to have sufficiently liquid prediction markets covering all the decisions you need to make. This is logistically nontrivial, and almost certainly much more computationally intensive. (If there are a hundred traders in your market, each of them using their own decision procedure which is on average as expensive as P, then delegating the decision to the market costs Society a hundred times as much as just using P yourself.)
+
+Nothing is gained—_but_ this can't be an argument against P being a good decision procedure, as the reason we can assume that the market will never underperform P is _because_ traders are free to use P themselves if it happens to be the best procedure. (It would be misleading to say that Society doesn't need to compute P because it has prediction markets, if, "under the hood", the traders in the market are in fact computing P all the time.)
+  
+To figure out whether these caveats matter, we can imagine some concrete scenarios.
+
+------
+
+(Okay, this one is a little bit silly, but it's illustrative.)
+
+Imagine implementing a sorting algorithm for the standard library of your new programming language. Should you use merge sort? Quicksort?
+
+````
+from math import log2
+import prediction markets
+
+def prediction_market_sort(my_list):
+    n = len(my_list)
+    op_budget = n * log2(n)
+    is_sorted = prediction_markets.create("Is the list sorted?", data=my_list, options=[True, False])
+
+    markets_to_resolve = []
+
+    while not is_sorted:
+
+        if is_sorted
+
+
+        next_comparison = prediction_markets.create(
+            f"Will the list be sorted with no more than {op_budget} comparisons, if the"
+            "next comparision is between these indicies?",
+            data=my_list,
+            options=[(i, j) for i in range(n) for j in range(i, n) if i != j]
+        )
+        i, j = next_comparison.leading
+        should_swap = prediction_markets.create(
+            f"Will the list be sorted with no more than {op_budget} comparisons, if we swap"
+            f"the elements at indices {i} and {j}?",
+            data=my_list,
+            options=[True, False]
+        )
+        if should_swap.resolution:
+            temp = my_list[i]
+            my_list[i] = my_list[j]
+            my_list[j] = temp
+```
\ No newline at end of file