@lapxo/obligations 0.4.5 → 0.4.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +42 -3
- package/TARGET.bound +148 -42
- package/contracts/extension-lineage-participation.json +30 -0
- package/contracts/m0-binomial-bridge.json +6 -0
- package/contracts/m0-diagonal-conditional.json +15 -0
- package/contracts/m0-keff-interval.json +27 -0
- package/contracts/m0-moment-identification.json +42 -0
- package/contracts/m1-diagonal-regions.json +45 -0
- package/contracts/m1-generator-binomial.json +26 -0
- package/contracts/m1-offdiag-limit.json +42 -0
- package/contracts/m1-subcauses.json +66 -0
- package/contracts/model-collapse-1a.json +16 -0
- package/contracts/projection-chain.json +20 -0
- package/docs/contracts/experiment1a-public-attribution.md +1 -0
- package/docs/contracts/extension-lineage-participation.md +13 -0
- package/docs/contracts/installation-046-inputs.md +1 -0
- package/docs/contracts/m0-binomial-bridge.md +1 -0
- package/docs/contracts/m0-diagonal-lindeberg.md +1 -0
- package/docs/contracts/m0-diagonal-moments.md +1 -0
- package/docs/contracts/m0-diagonal-symmetric.md +1 -0
- package/docs/contracts/m0-diagonal-threshold.md +1 -0
- package/docs/contracts/m0-keff-floor-refutation.md +1 -0
- package/docs/contracts/m0-keff-interval.md +1 -0
- package/docs/contracts/m0-moment-identification.md +1 -0
- package/docs/contracts/m0-refuted-inverses.md +1 -0
- package/docs/contracts/m0-wf-floor-refutation.md +1 -0
- package/docs/contracts/m1-diagonal-regions.md +1 -0
- package/docs/contracts/m1-generator-binomial.md +1 -0
- package/docs/contracts/m1-offdiag-limit.md +1 -0
- package/docs/contracts/model-collapse-1a.md +11 -0
- package/docs/contracts/projection-chain.md +1 -0
- package/package.json +1 -1
- package/proofs/definitions-046/declaration.json +11 -0
- package/proofs/experiment1a-046/declaration.json +11 -0
- package/proofs/m0-046/BridgeNegatives.lean +23 -0
- package/proofs/m0-046/M0Bridge.lean +300 -0
- package/proofs/m0-046/Obligations045/ConsensusGrid.lean +72 -0
- package/proofs/m0-046/Obligations045/M0Coincidence.lean +39 -0
- package/proofs/m0-046/Obligations045/M0Diagonal.lean +18 -0
- package/proofs/m0-046/Obligations045/M0Limit.lean +134 -0
- package/proofs/m0-046/Obligations045/M0Offdiag.lean +171 -0
- package/proofs/m0-046/Obligations045.lean +5 -0
- package/proofs/m0-046/lake-manifest.json +116 -0
- package/proofs/m0-046/lakefile.toml +14 -0
- package/proofs/m0-046/lean-toolchain +1 -0
- package/proofs/m0-046-diagonal/BridgeNegatives.lean +23 -0
- package/proofs/m0-046-diagonal/M0Bridge.lean +300 -0
- package/proofs/m0-046-diagonal/M0Diagonal046.lean +235 -0
- package/proofs/m0-046-diagonal/M0Lindeberg046.lean +92 -0
- package/proofs/m0-046-diagonal/M0Moments046.lean +295 -0
- package/proofs/m0-046-diagonal/M0Threshold046.lean +278 -0
- package/proofs/m0-046-diagonal/Obligations045/ConsensusGrid.lean +72 -0
- package/proofs/m0-046-diagonal/Obligations045/M0Coincidence.lean +39 -0
- package/proofs/m0-046-diagonal/Obligations045/M0Diagonal.lean +18 -0
- package/proofs/m0-046-diagonal/Obligations045/M0Limit.lean +134 -0
- package/proofs/m0-046-diagonal/Obligations045/M0Offdiag.lean +171 -0
- package/proofs/m0-046-diagonal/Obligations045.lean +5 -0
- package/proofs/m0-046-diagonal/lake-manifest.json +116 -0
- package/proofs/m0-046-diagonal/lakefile.toml +26 -0
- package/proofs/m0-046-diagonal/lean-toolchain +1 -0
- package/proofs/m0-046-identification/M0Identification046.lean +209 -0
- package/proofs/m0-046-identification/Obligations045/M0Coincidence.lean +39 -0
- package/proofs/m0-046-identification/lake-manifest.json +116 -0
- package/proofs/m0-046-identification/lakefile.toml +12 -0
- package/proofs/m0-046-identification/lean-toolchain +1 -0
- package/proofs/m0-046-uncertainty/BridgeNegatives.lean +23 -0
- package/proofs/m0-046-uncertainty/M0BlockCoverage046.lean +163 -0
- package/proofs/m0-046-uncertainty/M0Bridge.lean +300 -0
- package/proofs/m0-046-uncertainty/M0Diagonal046.lean +235 -0
- package/proofs/m0-046-uncertainty/M0FiniteDiscord046.lean +207 -0
- package/proofs/m0-046-uncertainty/M0Interval046.lean +82 -0
- package/proofs/m0-046-uncertainty/M0Lindeberg046.lean +92 -0
- package/proofs/m0-046-uncertainty/M0Moments046.lean +295 -0
- package/proofs/m0-046-uncertainty/M0Threshold046.lean +278 -0
- package/proofs/m0-046-uncertainty/Obligations045/ConsensusGrid.lean +72 -0
- package/proofs/m0-046-uncertainty/Obligations045/M0Coincidence.lean +39 -0
- package/proofs/m0-046-uncertainty/Obligations045/M0Diagonal.lean +18 -0
- package/proofs/m0-046-uncertainty/Obligations045/M0Limit.lean +134 -0
- package/proofs/m0-046-uncertainty/Obligations045/M0Offdiag.lean +171 -0
- package/proofs/m0-046-uncertainty/Obligations045.lean +5 -0
- package/proofs/m0-046-uncertainty/lake-manifest.json +116 -0
- package/proofs/m0-046-uncertainty/lakefile.toml +35 -0
- package/proofs/m0-046-uncertainty/lean-toolchain +1 -0
- package/proofs/m1-046-bridge/M0Bridge.lean +300 -0
- package/proofs/m1-046-bridge/M1Bridge046.lean +359 -0
- package/proofs/m1-046-bridge/Obligations045/M0Limit.lean +134 -0
- package/proofs/m1-046-bridge/Obligations045/M0Offdiag.lean +171 -0
- package/proofs/m1-046-bridge/lake-manifest.json +116 -0
- package/proofs/m1-046-bridge/lakefile.toml +29 -0
- package/proofs/m1-046-bridge/lean-toolchain +1 -0
- package/proofs/m1-046-diagonal/M0Bridge.lean +300 -0
- package/proofs/m1-046-diagonal/M0Diagonal046.lean +235 -0
- package/proofs/m1-046-diagonal/M0Lindeberg046.lean +92 -0
- package/proofs/m1-046-diagonal/M0Moments046.lean +295 -0
- package/proofs/m1-046-diagonal/M0Threshold046.lean +278 -0
- package/proofs/m1-046-diagonal/M1Bridge046.lean +359 -0
- package/proofs/m1-046-diagonal/M1Diagonal046.lean +334 -0
- package/proofs/m1-046-diagonal/M1Offdiag046.lean +270 -0
- package/proofs/m1-046-diagonal/Obligations045/M0Limit.lean +134 -0
- package/proofs/m1-046-diagonal/Obligations045/M0Offdiag.lean +171 -0
- package/proofs/m1-046-diagonal/lake-manifest.json +116 -0
- package/proofs/m1-046-diagonal/lakefile.toml +35 -0
- package/proofs/m1-046-diagonal/lean-toolchain +1 -0
- package/proofs/m1-046-offdiag/M0Bridge.lean +300 -0
- package/proofs/m1-046-offdiag/M0Diagonal046.lean +235 -0
- package/proofs/m1-046-offdiag/M0Moments046.lean +295 -0
- package/proofs/m1-046-offdiag/M1Bridge046.lean +359 -0
- package/proofs/m1-046-offdiag/M1Offdiag046.lean +270 -0
- package/proofs/m1-046-offdiag/Obligations045/M0Limit.lean +134 -0
- package/proofs/m1-046-offdiag/Obligations045/M0Offdiag.lean +171 -0
- package/proofs/m1-046-offdiag/lake-manifest.json +116 -0
- package/proofs/m1-046-offdiag/lakefile.toml +32 -0
- package/proofs/m1-046-offdiag/lean-toolchain +1 -0
- package/proofs/projection-chain.md +11 -0
- package/protocols/model-collapse-1a.json +108 -0
- package/receipts.bound +578 -210
- package/samples/laws/definitions/no/sample.json +26 -0
- package/samples/laws/definitions/yes/sample.json +12 -0
- package/samples/laws/experiment1a/no/sample.json +16 -0
- package/samples/laws/experiment1a/yes/sample.json +8 -0
- package/samples/laws/m0-binomial-bridge/no/pairwise-is-not-joint.json +59 -0
- package/samples/laws/m0-binomial-bridge/no/sample.json +13 -0
- package/samples/laws/m0-binomial-bridge/yes/sample.json +16 -0
- package/samples/laws/m0-binomial-bridge/yes/small-binomial-table.json +100 -0
- package/samples/laws/m0-diagonal-conditional/no/sample.json +5 -0
- package/samples/laws/m0-diagonal-conditional/yes/sample.json +7 -0
- package/samples/laws/m0-keff-interval/no/sample.json +215 -0
- package/samples/laws/m0-keff-interval/yes/api-rows.json +2002 -0
- package/samples/laws/m0-keff-interval/yes/sample.json +70 -0
- package/samples/laws/m0-moment-identification/no/sample.json +47 -0
- package/samples/laws/m0-moment-identification/yes/sample.json +97 -0
- package/samples/laws/m1-diagonal-regions/no/sample.json +44 -0
- package/samples/laws/m1-diagonal-regions/yes/sample.json +45 -0
- package/samples/laws/m1-generator-binomial/no/sample.json +21 -0
- package/samples/laws/m1-generator-binomial/yes/sample.json +290 -0
- package/samples/laws/m1-offdiag-limit/no/sample.json +17 -0
- package/samples/laws/m1-offdiag-limit/yes/sample.json +87 -0
- package/samples/laws/projection-chain/no/sample.json +26 -0
- package/samples/laws/projection-chain/yes/sample.json +25 -0
- package/samples/no/installed-artifact.json +2 -2
- package/samples/yes/installed-artifact.json +2 -2
- package/src/laws/laws.bound +146 -0
- package/vectors/laws/a7-t90.json +72 -0
- package/vectors/laws/a9-t99.json +110 -0
- package/vectors/laws/definitions.native-capture.json +326 -0
- package/vectors/laws/definitions.native.json +82 -0
- package/vectors/laws/experiment1a-protocol.native-capture.json +391 -0
- package/vectors/laws/experiment1a-protocol.native.json +64 -0
- package/vectors/laws/experiment1a-public-input.native-capture.json +224 -0
- package/vectors/laws/m0-binomial-bridge.lean.json +185 -0
- package/vectors/laws/m0-diagonal-lindeberg.lean.json +167 -0
- package/vectors/laws/m0-diagonal-moments.lean.json +185 -0
- package/vectors/laws/m0-diagonal-symmetric.lean.json +188 -0
- package/vectors/laws/m0-diagonal-threshold.lean.json +199 -0
- package/vectors/laws/m0-identification.lean.json +136 -0
- package/vectors/laws/m0-identification.native-capture.json +230 -0
- package/vectors/laws/m0-keff-interval.json +569 -0
- package/vectors/laws/m0-uncertainty-blocks.lean.json +201 -0
- package/vectors/laws/m0-uncertainty-finite-discord.lean.json +194 -0
- package/vectors/laws/m0-uncertainty-interval.lean.json +189 -0
- package/vectors/laws/m0-uncertainty.native-capture.json +651 -0
- package/vectors/laws/m1-diagonal-partial.lean.json +192 -0
- package/vectors/laws/m1-diagonal-partial.native-capture.json +275 -0
- package/vectors/laws/m1-generator-binomial.lean.json +162 -0
- package/vectors/laws/m1-generator-binomial.native-capture.json +245 -0
- package/vectors/laws/m1-offdiag-limit.lean.json +166 -0
- package/vectors/laws/m1-offdiag-limit.native-capture.json +260 -0
- package/vectors/laws/model-collapse-1a.json +12 -0
- package/vectors/laws/projection-chain.json +61 -0
- package/vectors/laws/projection-chain.native-capture.json +311 -0
- package/vectors/laws/projection-chain.native.json +56 -0
- package/vectors/measures/installed-artifact.cli.json +6 -6
- package/CHANGELOG.md +0 -10
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "m0-diagonal-symmetric",
|
|
3
|
+
"claim": "diagonal-prerequisites-and-conditional-transfer",
|
|
4
|
+
"status": "kernel-proved conditional statement; unsigned native reader preparation",
|
|
5
|
+
"proof": {
|
|
6
|
+
"files": [
|
|
7
|
+
{
|
|
8
|
+
"path": "proofs/m0-046-diagonal/BridgeNegatives.lean",
|
|
9
|
+
"sha256": "sha256:956afd1cfe87eaf2c6586822541a3ede6cc285f8659d27d88228f5534e1c640b"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"path": "proofs/m0-046-diagonal/M0Bridge.lean",
|
|
13
|
+
"sha256": "sha256:b438b2961b93c62787275e158a90b534a400de8646a0552b099863fa5227c21e"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"path": "proofs/m0-046-diagonal/M0Diagonal046.lean",
|
|
17
|
+
"sha256": "sha256:c0403d40e1c6849045bf70eab2854eeac28a2464783e06ce03f2f36e33c2146c"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"path": "proofs/m0-046-diagonal/M0Lindeberg046.lean",
|
|
21
|
+
"sha256": "sha256:de5477cdde114064f3d272ede95490483040fc857399181c376c285c02411da8"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"path": "proofs/m0-046-diagonal/M0Moments046.lean",
|
|
25
|
+
"sha256": "sha256:06780115a2b44a77a9be72673350332b77045489dba7ff081beecd48b8d51a73"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"path": "proofs/m0-046-diagonal/M0Threshold046.lean",
|
|
29
|
+
"sha256": "sha256:861cd13ecd4b7f37a1bc00362b4fdc213cefdcf380171947a14463b0bc465a9e"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"path": "proofs/m0-046-diagonal/Obligations045.lean",
|
|
33
|
+
"sha256": "sha256:be4956a2720d696e5456ad108543945c6f65f1986126513f10edcd4f1841bced"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"path": "proofs/m0-046-diagonal/Obligations045/ConsensusGrid.lean",
|
|
37
|
+
"sha256": "sha256:b26a1b68522e881e446a47f4c84cd8b569a1c48f085a5c9a9d03abdeecafacce"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"path": "proofs/m0-046-diagonal/Obligations045/M0Coincidence.lean",
|
|
41
|
+
"sha256": "sha256:e870a43e435f4b4b52f28f44dd7391c40704faa41febd272434d2e56b2bd6771"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"path": "proofs/m0-046-diagonal/Obligations045/M0Diagonal.lean",
|
|
45
|
+
"sha256": "sha256:4d83f047fc5e199f46b2cc28dfe77b006a7dd408f0f14ed54afb5e21315148e2"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"path": "proofs/m0-046-diagonal/Obligations045/M0Limit.lean",
|
|
49
|
+
"sha256": "sha256:aedc88b8ba4edf884cacec78da82eef29187ded0199d44674466425af1585b8c"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"path": "proofs/m0-046-diagonal/Obligations045/M0Offdiag.lean",
|
|
53
|
+
"sha256": "sha256:af8a95d00cd0956acaec06deeebe7156dccf156b698408275c3e710f58c1c1e8"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"path": "proofs/m0-046-diagonal/lake-manifest.json",
|
|
57
|
+
"sha256": "sha256:fc8b4ba4b08bbcadf736bc8bcf803b5fdedfebafb57dec61ce0106e99964285d"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"path": "proofs/m0-046-diagonal/lakefile.toml",
|
|
61
|
+
"sha256": "sha256:9738f8737965b3383db30a9c7bd7c5c7b24526e59794cf1d3ecf71b5d0827b92"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"path": "proofs/m0-046-diagonal/lean-toolchain",
|
|
65
|
+
"sha256": "sha256:55e97be96000b5e9e290c9e74482e5e317861499a5540353ce845471bded8cea"
|
|
66
|
+
}
|
|
67
|
+
],
|
|
68
|
+
"mathlib": "c44e0c8ee63ca166450922a373c7409c5d26b00b",
|
|
69
|
+
"auditedTheorems": [
|
|
70
|
+
"Obligations046.Diagonal.weights_fin_sum",
|
|
71
|
+
"Obligations046.Diagonal.variance_lower_pos",
|
|
72
|
+
"Obligations046.Diagonal.bernoulli_variance_lower",
|
|
73
|
+
"Obligations046.Diagonal.variance_rate_pos",
|
|
74
|
+
"Obligations046.Diagonal.finite_variance_lower",
|
|
75
|
+
"Obligations046.Diagonal.mean_rounding_bound",
|
|
76
|
+
"Obligations046.Diagonal.diagonal_mean_bound",
|
|
77
|
+
"Obligations046.Diagonal.variance_rate_limit",
|
|
78
|
+
"Obligations046.Diagonal.variance_atTop",
|
|
79
|
+
"Obligations046.Diagonal.diagonal_drift_squared_limit",
|
|
80
|
+
"Obligations046.Diagonal.complement_involutive",
|
|
81
|
+
"Obligations046.Diagonal.unbiased_mass_complement",
|
|
82
|
+
"Obligations046.Diagonal.unbiased_joint_complement",
|
|
83
|
+
"Obligations046.Diagonal.count_complement",
|
|
84
|
+
"Obligations046.Diagonal.fair_loss_reflection",
|
|
85
|
+
"Obligations046.Diagonal.unbiased_conditional_exact",
|
|
86
|
+
"Obligations046.Diagonal.floor_limit_diag_unbiased",
|
|
87
|
+
"Obligations046.Diagonal.deterministic_quota_even",
|
|
88
|
+
"Obligations046.Diagonal.deterministic_quota_odd",
|
|
89
|
+
"Obligations046.Diagonal.heterogeneous_diagonal",
|
|
90
|
+
"Obligations046.Diagonal.heterogeneous_not_unbiased"
|
|
91
|
+
],
|
|
92
|
+
"allowedAxioms": [
|
|
93
|
+
"Classical.choice",
|
|
94
|
+
"Quot.sound",
|
|
95
|
+
"propext"
|
|
96
|
+
]
|
|
97
|
+
},
|
|
98
|
+
"samples": {
|
|
99
|
+
"inputs": [
|
|
100
|
+
"contracts/m0-diagonal-conditional.json",
|
|
101
|
+
"samples/laws/m0-diagonal-conditional/yes/sample.json",
|
|
102
|
+
"samples/laws/m0-diagonal-conditional/no/sample.json",
|
|
103
|
+
"vectors/laws/policy.json"
|
|
104
|
+
],
|
|
105
|
+
"digests": {
|
|
106
|
+
"contracts/m0-diagonal-conditional.json": "sha256:e8644b4508965b6187dbf210cdced97ba14c4f1e748dac68fe9bb3e078e528a7",
|
|
107
|
+
"samples/laws/m0-diagonal-conditional/yes/sample.json": "sha256:769f0bbdc8ab13fffff841ea1121d8348885d65f64fb719528aa5a2a1e219078",
|
|
108
|
+
"samples/laws/m0-diagonal-conditional/no/sample.json": "sha256:68ff10d4e29c311760aca786dd85362d6dcc62c893ca715882485d38ef77025e",
|
|
109
|
+
"vectors/laws/policy.json": "sha256:e941ce8cd86f0ec31621fa6b4deef9685dc1fead283f4b2fe22a8a58e3d5d939"
|
|
110
|
+
}
|
|
111
|
+
},
|
|
112
|
+
"capturePolicy": {
|
|
113
|
+
"timeoutMs": 25000,
|
|
114
|
+
"responseBytes": 65536
|
|
115
|
+
},
|
|
116
|
+
"execution": {
|
|
117
|
+
"profile": "lean-kernel@1",
|
|
118
|
+
"project": "proofs/m0-046-diagonal",
|
|
119
|
+
"identityInputs": [
|
|
120
|
+
"proofs/m0-046-diagonal/BridgeNegatives.lean",
|
|
121
|
+
"proofs/m0-046-diagonal/M0Bridge.lean",
|
|
122
|
+
"proofs/m0-046-diagonal/M0Diagonal046.lean",
|
|
123
|
+
"proofs/m0-046-diagonal/M0Lindeberg046.lean",
|
|
124
|
+
"proofs/m0-046-diagonal/M0Moments046.lean",
|
|
125
|
+
"proofs/m0-046-diagonal/M0Threshold046.lean",
|
|
126
|
+
"proofs/m0-046-diagonal/Obligations045.lean",
|
|
127
|
+
"proofs/m0-046-diagonal/Obligations045/ConsensusGrid.lean",
|
|
128
|
+
"proofs/m0-046-diagonal/Obligations045/M0Coincidence.lean",
|
|
129
|
+
"proofs/m0-046-diagonal/Obligations045/M0Diagonal.lean",
|
|
130
|
+
"proofs/m0-046-diagonal/Obligations045/M0Limit.lean",
|
|
131
|
+
"proofs/m0-046-diagonal/Obligations045/M0Offdiag.lean",
|
|
132
|
+
"proofs/m0-046-diagonal/lake-manifest.json",
|
|
133
|
+
"proofs/m0-046-diagonal/lakefile.toml",
|
|
134
|
+
"proofs/m0-046-diagonal/lean-toolchain",
|
|
135
|
+
"vectors/laws/m0-diagonal-symmetric.lean.json",
|
|
136
|
+
"contracts/m0-diagonal-conditional.json",
|
|
137
|
+
"samples/laws/m0-diagonal-conditional/yes/sample.json",
|
|
138
|
+
"samples/laws/m0-diagonal-conditional/no/sample.json",
|
|
139
|
+
"vectors/laws/policy.json"
|
|
140
|
+
],
|
|
141
|
+
"toolchain": "leanprover/lean4:v4.19.0",
|
|
142
|
+
"compilerIdentity": "6caaee842e94",
|
|
143
|
+
"targets": [
|
|
144
|
+
"M0Diagonal046"
|
|
145
|
+
],
|
|
146
|
+
"sources": [
|
|
147
|
+
"M0Diagonal046.lean"
|
|
148
|
+
],
|
|
149
|
+
"auditImports": [
|
|
150
|
+
"M0Diagonal046"
|
|
151
|
+
],
|
|
152
|
+
"negative": {
|
|
153
|
+
"name": "score-is-not-unbiased",
|
|
154
|
+
"source": "import M0Diagonal046\nopen Obligations045.M0 Obligations046.Diagonal Filter Topology\nnoncomputable section\nexample : Tendsto (fun N => conditionalError heterogeneous N heterogeneousA) atTop (\ud835\udcdd ((1:\u211d)/2)) := by\n exact floor_limit_diag_unbiased heterogeneous heterogeneousA heterogeneous_diagonal\n",
|
|
155
|
+
"exitCode": 1,
|
|
156
|
+
"cause": [
|
|
157
|
+
"type mismatch"
|
|
158
|
+
]
|
|
159
|
+
},
|
|
160
|
+
"extraNegatives": [
|
|
161
|
+
{
|
|
162
|
+
"name": "boundary-is-not-domain",
|
|
163
|
+
"source": "import M0Diagonal046\nopen Obligations045.M0\nnoncomputable section\nexample : (1:\u211d) < 1 := by norm_num\n",
|
|
164
|
+
"exitCode": 1,
|
|
165
|
+
"cause": [
|
|
166
|
+
"unsolved goals"
|
|
167
|
+
]
|
|
168
|
+
}
|
|
169
|
+
]
|
|
170
|
+
},
|
|
171
|
+
"boundary": {
|
|
172
|
+
"productLaw": "raw individual joint Bernoulli law, never assumed binomial counts",
|
|
173
|
+
"finiteRepresentation": "all N, fair ties",
|
|
174
|
+
"average": "N>0; zero handled separately",
|
|
175
|
+
"offdiag": "all inherited sampling/measurability hypotheses and no score=1/2",
|
|
176
|
+
"generalDiagonal": false,
|
|
177
|
+
"cEqualsOne": false,
|
|
178
|
+
"originIndependenceClaimed": false,
|
|
179
|
+
"admitted": false,
|
|
180
|
+
"rootReceipts": false,
|
|
181
|
+
"releaseReady": false
|
|
182
|
+
},
|
|
183
|
+
"generalDiagonal": {
|
|
184
|
+
"status": "open",
|
|
185
|
+
"actualCLTProved": false
|
|
186
|
+
},
|
|
187
|
+
"block": "symmetric"
|
|
188
|
+
}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "m0-diagonal-threshold",
|
|
3
|
+
"claim": "diagonal-prerequisites-and-conditional-transfer",
|
|
4
|
+
"status": "kernel-proved conditional statement; unsigned native reader preparation",
|
|
5
|
+
"proof": {
|
|
6
|
+
"files": [
|
|
7
|
+
{
|
|
8
|
+
"path": "proofs/m0-046-diagonal/BridgeNegatives.lean",
|
|
9
|
+
"sha256": "sha256:956afd1cfe87eaf2c6586822541a3ede6cc285f8659d27d88228f5534e1c640b"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"path": "proofs/m0-046-diagonal/M0Bridge.lean",
|
|
13
|
+
"sha256": "sha256:b438b2961b93c62787275e158a90b534a400de8646a0552b099863fa5227c21e"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"path": "proofs/m0-046-diagonal/M0Diagonal046.lean",
|
|
17
|
+
"sha256": "sha256:c0403d40e1c6849045bf70eab2854eeac28a2464783e06ce03f2f36e33c2146c"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"path": "proofs/m0-046-diagonal/M0Lindeberg046.lean",
|
|
21
|
+
"sha256": "sha256:de5477cdde114064f3d272ede95490483040fc857399181c376c285c02411da8"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"path": "proofs/m0-046-diagonal/M0Moments046.lean",
|
|
25
|
+
"sha256": "sha256:06780115a2b44a77a9be72673350332b77045489dba7ff081beecd48b8d51a73"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"path": "proofs/m0-046-diagonal/M0Threshold046.lean",
|
|
29
|
+
"sha256": "sha256:861cd13ecd4b7f37a1bc00362b4fdc213cefdcf380171947a14463b0bc465a9e"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"path": "proofs/m0-046-diagonal/Obligations045.lean",
|
|
33
|
+
"sha256": "sha256:be4956a2720d696e5456ad108543945c6f65f1986126513f10edcd4f1841bced"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"path": "proofs/m0-046-diagonal/Obligations045/ConsensusGrid.lean",
|
|
37
|
+
"sha256": "sha256:b26a1b68522e881e446a47f4c84cd8b569a1c48f085a5c9a9d03abdeecafacce"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"path": "proofs/m0-046-diagonal/Obligations045/M0Coincidence.lean",
|
|
41
|
+
"sha256": "sha256:e870a43e435f4b4b52f28f44dd7391c40704faa41febd272434d2e56b2bd6771"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"path": "proofs/m0-046-diagonal/Obligations045/M0Diagonal.lean",
|
|
45
|
+
"sha256": "sha256:4d83f047fc5e199f46b2cc28dfe77b006a7dd408f0f14ed54afb5e21315148e2"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"path": "proofs/m0-046-diagonal/Obligations045/M0Limit.lean",
|
|
49
|
+
"sha256": "sha256:aedc88b8ba4edf884cacec78da82eef29187ded0199d44674466425af1585b8c"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"path": "proofs/m0-046-diagonal/Obligations045/M0Offdiag.lean",
|
|
53
|
+
"sha256": "sha256:af8a95d00cd0956acaec06deeebe7156dccf156b698408275c3e710f58c1c1e8"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"path": "proofs/m0-046-diagonal/lake-manifest.json",
|
|
57
|
+
"sha256": "sha256:fc8b4ba4b08bbcadf736bc8bcf803b5fdedfebafb57dec61ce0106e99964285d"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"path": "proofs/m0-046-diagonal/lakefile.toml",
|
|
61
|
+
"sha256": "sha256:9738f8737965b3383db30a9c7bd7c5c7b24526e59794cf1d3ecf71b5d0827b92"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"path": "proofs/m0-046-diagonal/lean-toolchain",
|
|
65
|
+
"sha256": "sha256:55e97be96000b5e9e290c9e74482e5e317861499a5540353ce845471bded8cea"
|
|
66
|
+
}
|
|
67
|
+
],
|
|
68
|
+
"mathlib": "c44e0c8ee63ca166450922a373c7409c5d26b00b",
|
|
69
|
+
"auditedTheorems": [
|
|
70
|
+
"Obligations046.Threshold.moving_cut_sandwich",
|
|
71
|
+
"Obligations046.Threshold.sigma_pos",
|
|
72
|
+
"Obligations046.Threshold.threshold_limit",
|
|
73
|
+
"Obligations046.Threshold.fair_loss_bounds",
|
|
74
|
+
"Obligations046.Threshold.lower_cut_pointwise",
|
|
75
|
+
"Obligations046.Threshold.upper_cut_pointwise",
|
|
76
|
+
"Obligations046.Threshold.cdf_finite",
|
|
77
|
+
"Obligations046.Threshold.error_finite",
|
|
78
|
+
"Obligations046.Threshold.joint_nonneg",
|
|
79
|
+
"Obligations046.Threshold.lower_cut",
|
|
80
|
+
"Obligations046.Threshold.upper_cut",
|
|
81
|
+
"Obligations046.Threshold.diagonal_transfer_of_fixed_cut_limits",
|
|
82
|
+
"Obligations046.Threshold.cdf_mono",
|
|
83
|
+
"Obligations046.Threshold.strict_lower_cut",
|
|
84
|
+
"Obligations046.Threshold.strict_upper_cut",
|
|
85
|
+
"Obligations046.Threshold.threshold_cdf_limits_of_fixed_cut_limits",
|
|
86
|
+
"Obligations046.Threshold.standardized_eq_threshold",
|
|
87
|
+
"Obligations046.Threshold.weak_strict_indicator_difference",
|
|
88
|
+
"Obligations046.Threshold.tie_mass_difference",
|
|
89
|
+
"Obligations046.Threshold.tie_limit_of_fixed_cut_limits",
|
|
90
|
+
"Obligations046.Threshold.floor_limit_diag_of_fixed_cut_limits",
|
|
91
|
+
"Obligations046.Threshold.above_limit",
|
|
92
|
+
"Obligations046.Threshold.above_loss_zero",
|
|
93
|
+
"Obligations046.Threshold.lgn_alone_does_not_give_half"
|
|
94
|
+
],
|
|
95
|
+
"allowedAxioms": [
|
|
96
|
+
"Classical.choice",
|
|
97
|
+
"Quot.sound",
|
|
98
|
+
"propext"
|
|
99
|
+
]
|
|
100
|
+
},
|
|
101
|
+
"samples": {
|
|
102
|
+
"inputs": [
|
|
103
|
+
"contracts/m0-diagonal-conditional.json",
|
|
104
|
+
"samples/laws/m0-diagonal-conditional/yes/sample.json",
|
|
105
|
+
"samples/laws/m0-diagonal-conditional/no/sample.json",
|
|
106
|
+
"vectors/laws/policy.json"
|
|
107
|
+
],
|
|
108
|
+
"digests": {
|
|
109
|
+
"contracts/m0-diagonal-conditional.json": "sha256:e8644b4508965b6187dbf210cdced97ba14c4f1e748dac68fe9bb3e078e528a7",
|
|
110
|
+
"samples/laws/m0-diagonal-conditional/yes/sample.json": "sha256:769f0bbdc8ab13fffff841ea1121d8348885d65f64fb719528aa5a2a1e219078",
|
|
111
|
+
"samples/laws/m0-diagonal-conditional/no/sample.json": "sha256:68ff10d4e29c311760aca786dd85362d6dcc62c893ca715882485d38ef77025e",
|
|
112
|
+
"vectors/laws/policy.json": "sha256:e941ce8cd86f0ec31621fa6b4deef9685dc1fead283f4b2fe22a8a58e3d5d939"
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
"capturePolicy": {
|
|
116
|
+
"timeoutMs": 25000,
|
|
117
|
+
"responseBytes": 65536
|
|
118
|
+
},
|
|
119
|
+
"execution": {
|
|
120
|
+
"profile": "lean-kernel@1",
|
|
121
|
+
"project": "proofs/m0-046-diagonal",
|
|
122
|
+
"identityInputs": [
|
|
123
|
+
"proofs/m0-046-diagonal/BridgeNegatives.lean",
|
|
124
|
+
"proofs/m0-046-diagonal/M0Bridge.lean",
|
|
125
|
+
"proofs/m0-046-diagonal/M0Diagonal046.lean",
|
|
126
|
+
"proofs/m0-046-diagonal/M0Lindeberg046.lean",
|
|
127
|
+
"proofs/m0-046-diagonal/M0Moments046.lean",
|
|
128
|
+
"proofs/m0-046-diagonal/M0Threshold046.lean",
|
|
129
|
+
"proofs/m0-046-diagonal/Obligations045.lean",
|
|
130
|
+
"proofs/m0-046-diagonal/Obligations045/ConsensusGrid.lean",
|
|
131
|
+
"proofs/m0-046-diagonal/Obligations045/M0Coincidence.lean",
|
|
132
|
+
"proofs/m0-046-diagonal/Obligations045/M0Diagonal.lean",
|
|
133
|
+
"proofs/m0-046-diagonal/Obligations045/M0Limit.lean",
|
|
134
|
+
"proofs/m0-046-diagonal/Obligations045/M0Offdiag.lean",
|
|
135
|
+
"proofs/m0-046-diagonal/lake-manifest.json",
|
|
136
|
+
"proofs/m0-046-diagonal/lakefile.toml",
|
|
137
|
+
"proofs/m0-046-diagonal/lean-toolchain",
|
|
138
|
+
"vectors/laws/m0-diagonal-threshold.lean.json",
|
|
139
|
+
"contracts/m0-diagonal-conditional.json",
|
|
140
|
+
"samples/laws/m0-diagonal-conditional/yes/sample.json",
|
|
141
|
+
"samples/laws/m0-diagonal-conditional/no/sample.json",
|
|
142
|
+
"vectors/laws/policy.json"
|
|
143
|
+
],
|
|
144
|
+
"toolchain": "leanprover/lean4:v4.19.0",
|
|
145
|
+
"compilerIdentity": "6caaee842e94",
|
|
146
|
+
"targets": [
|
|
147
|
+
"M0Threshold046"
|
|
148
|
+
],
|
|
149
|
+
"sources": [
|
|
150
|
+
"M0Threshold046.lean"
|
|
151
|
+
],
|
|
152
|
+
"auditImports": [
|
|
153
|
+
"M0Threshold046"
|
|
154
|
+
],
|
|
155
|
+
"negative": {
|
|
156
|
+
"name": "omit-fixed-cut-limits",
|
|
157
|
+
"source": "import M0Threshold046\nopen Obligations045.M0 Obligations046.Threshold Filter Topology\nnoncomputable section\nexample (M : Domain) (a : Fin M.K \u2192 Bool) (hdiag : score M a = (1:\u211d)/2)\n (F : \u211d \u2192 \u211d) (hF : ContinuousAt F 0) (hF0 : F 0 = (1:\u211d)/2) :\n Tendsto (fun N => conditionalError M N a) atTop (\ud835\udcdd ((1:\u211d)/2)) := by\n apply floor_limit_diag_of_fixed_cut_limits M a hdiag F hF hF0\n",
|
|
158
|
+
"exitCode": 1,
|
|
159
|
+
"cause": [
|
|
160
|
+
"unsolved goals"
|
|
161
|
+
]
|
|
162
|
+
},
|
|
163
|
+
"extraNegatives": [
|
|
164
|
+
{
|
|
165
|
+
"name": "omit-limit-continuity",
|
|
166
|
+
"source": "import M0Threshold046\nopen Obligations045.M0 Obligations046.Threshold Filter Topology\nnoncomputable section\nexample (M : Domain) (a : Fin M.K \u2192 Bool) (hdiag : score M a = (1:\u211d)/2)\n (F : \u211d \u2192 \u211d) (hF0 : F 0 = (1:\u211d)/2)\n (hCLT : \u2200 z, Tendsto (fun N => cdf M a N z) atTop (\ud835\udcdd (F z))) :\n Tendsto (fun N => conditionalError M N a) atTop (\ud835\udcdd ((1:\u211d)/2)) := by\n apply floor_limit_diag_of_fixed_cut_limits M a hdiag F ?_ hF0 hCLT\n",
|
|
167
|
+
"exitCode": 1,
|
|
168
|
+
"cause": [
|
|
169
|
+
"unsolved goals"
|
|
170
|
+
]
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"name": "lgn-is-not-majority-limit",
|
|
174
|
+
"source": "import M0Threshold046\nopen Obligations045.M0 Obligations046.Threshold Filter Topology\nnoncomputable section\nexample : Tendsto (fun N => limitingLoss (above N)) atTop (\ud835\udcdd ((1:\u211d)/2)) := by\n exact above_limit\n",
|
|
175
|
+
"exitCode": 1,
|
|
176
|
+
"cause": [
|
|
177
|
+
"type mismatch"
|
|
178
|
+
]
|
|
179
|
+
}
|
|
180
|
+
]
|
|
181
|
+
},
|
|
182
|
+
"boundary": {
|
|
183
|
+
"productLaw": "raw individual joint Bernoulli law, never assumed binomial counts",
|
|
184
|
+
"finiteRepresentation": "all N, fair ties",
|
|
185
|
+
"average": "N>0; zero handled separately",
|
|
186
|
+
"offdiag": "all inherited sampling/measurability hypotheses and no score=1/2",
|
|
187
|
+
"generalDiagonal": false,
|
|
188
|
+
"cEqualsOne": false,
|
|
189
|
+
"originIndependenceClaimed": false,
|
|
190
|
+
"admitted": false,
|
|
191
|
+
"rootReceipts": false,
|
|
192
|
+
"releaseReady": false
|
|
193
|
+
},
|
|
194
|
+
"generalDiagonal": {
|
|
195
|
+
"status": "open",
|
|
196
|
+
"actualCLTProved": false
|
|
197
|
+
},
|
|
198
|
+
"block": "threshold"
|
|
199
|
+
}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "m0-identification",
|
|
3
|
+
"block": "identification",
|
|
4
|
+
"claim": "conditional-uniform-population-identification",
|
|
5
|
+
"generalDiagonal": {
|
|
6
|
+
"status": "open",
|
|
7
|
+
"actualCLTProved": false
|
|
8
|
+
},
|
|
9
|
+
"identificationBoundary": {
|
|
10
|
+
"family": "uniform-known-p-population@1",
|
|
11
|
+
"nonuniformIdentified": false,
|
|
12
|
+
"finiteSampleGuarantee": false,
|
|
13
|
+
"originalThreeCards": "open"
|
|
14
|
+
},
|
|
15
|
+
"proof": {
|
|
16
|
+
"files": [
|
|
17
|
+
{
|
|
18
|
+
"path": "proofs/m0-046-identification/M0Identification046.lean",
|
|
19
|
+
"sha256": "sha256:f77a6b3fe02655ad26b18c403bf9b23367788e9bdd0191817bdcf311f3799f30"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"path": "proofs/m0-046-identification/Obligations045/M0Coincidence.lean",
|
|
23
|
+
"sha256": "sha256:e870a43e435f4b4b52f28f44dd7391c40704faa41febd272434d2e56b2bd6771"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"path": "proofs/m0-046-identification/lake-manifest.json",
|
|
27
|
+
"sha256": "sha256:fc8b4ba4b08bbcadf736bc8bcf803b5fdedfebafb57dec61ce0106e99964285d"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"path": "proofs/m0-046-identification/lakefile.toml",
|
|
31
|
+
"sha256": "sha256:f79ba6f5e48427aaa5bf5e6bfd5574bbfbb8a479b5b30aa95ecbda868debaa3c"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"path": "proofs/m0-046-identification/lean-toolchain",
|
|
35
|
+
"sha256": "sha256:55e97be96000b5e9e290c9e74482e5e317861499a5540353ce845471bded8cea"
|
|
36
|
+
}
|
|
37
|
+
],
|
|
38
|
+
"mathlib": "c44e0c8ee63ca166450922a373c7409c5d26b00b",
|
|
39
|
+
"auditedTheorems": [
|
|
40
|
+
"Obligations046.M0Identification.expect_quartic",
|
|
41
|
+
"Obligations046.M0Identification.fourth_coincidence",
|
|
42
|
+
"Obligations046.M0Identification.uniform_fourth_strict",
|
|
43
|
+
"Obligations046.M0Identification.uniform_pair_fourth_injective",
|
|
44
|
+
"Obligations046.M0Identification.recover_uniform_parameters",
|
|
45
|
+
"Obligations046.M0Identification.uniform_cK_injective",
|
|
46
|
+
"Obligations046.M0Identification.nonuniform_normalized",
|
|
47
|
+
"Obligations046.M0Identification.nonuniform_power_collision",
|
|
48
|
+
"Obligations046.M0Identification.nonuniform_same_pair_fourth",
|
|
49
|
+
"Obligations046.M0Identification.nonuniform_distinct_parameters",
|
|
50
|
+
"Obligations046.M0Identification.nonuniform_actual_fourth_collision",
|
|
51
|
+
"Obligations046.M0Identification.uniform_normalized",
|
|
52
|
+
"Obligations046.M0Identification.uniform_powers",
|
|
53
|
+
"Obligations046.M0Identification.uniform_population_pair",
|
|
54
|
+
"Obligations046.M0Identification.uniform_population_fourth",
|
|
55
|
+
"Obligations046.M0Identification.uniform_population_identification",
|
|
56
|
+
"Obligations046.M0Identification.unknown_p_alias",
|
|
57
|
+
"Obligations046.M0Identification.zero_c_alias"
|
|
58
|
+
],
|
|
59
|
+
"allowedAxioms": [
|
|
60
|
+
"propext",
|
|
61
|
+
"Classical.choice",
|
|
62
|
+
"Quot.sound"
|
|
63
|
+
]
|
|
64
|
+
},
|
|
65
|
+
"samples": {
|
|
66
|
+
"inputs": [
|
|
67
|
+
"contracts/m0-moment-identification.json",
|
|
68
|
+
"samples/laws/m0-moment-identification/yes/sample.json",
|
|
69
|
+
"samples/laws/m0-moment-identification/no/sample.json",
|
|
70
|
+
"vectors/laws/policy.json"
|
|
71
|
+
],
|
|
72
|
+
"digests": {
|
|
73
|
+
"contracts/m0-moment-identification.json": "sha256:d8fcf6214714a6d5a6d47291aa1bbd874ea3b4f778bcceef0e9982335caa359b",
|
|
74
|
+
"samples/laws/m0-moment-identification/yes/sample.json": "sha256:602257498a1cef389ee0edf21f33b5ca78db9c792a5dc93b6316ba0c08f31d04",
|
|
75
|
+
"samples/laws/m0-moment-identification/no/sample.json": "sha256:72b1eaea2ae316acc87f5a3eb231c60dee0950abad2c20643fe2578b8e1235d3",
|
|
76
|
+
"vectors/laws/policy.json": "sha256:e941ce8cd86f0ec31621fa6b4deef9685dc1fead283f4b2fe22a8a58e3d5d939"
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
"capturePolicy": {
|
|
80
|
+
"timeoutMs": 25000,
|
|
81
|
+
"responseBytes": 65536
|
|
82
|
+
},
|
|
83
|
+
"execution": {
|
|
84
|
+
"profile": "lean-kernel@1",
|
|
85
|
+
"project": "proofs/m0-046-identification",
|
|
86
|
+
"toolchain": "leanprover/lean4:v4.19.0",
|
|
87
|
+
"compilerIdentity": "6caaee842e94",
|
|
88
|
+
"targets": [
|
|
89
|
+
"M0Identification046"
|
|
90
|
+
],
|
|
91
|
+
"sources": [
|
|
92
|
+
"M0Identification046.lean"
|
|
93
|
+
],
|
|
94
|
+
"auditImports": [
|
|
95
|
+
"M0Identification046"
|
|
96
|
+
],
|
|
97
|
+
"identityInputs": [
|
|
98
|
+
"proofs/m0-046-identification/M0Identification046.lean",
|
|
99
|
+
"proofs/m0-046-identification/Obligations045/M0Coincidence.lean",
|
|
100
|
+
"proofs/m0-046-identification/lake-manifest.json",
|
|
101
|
+
"proofs/m0-046-identification/lakefile.toml",
|
|
102
|
+
"proofs/m0-046-identification/lean-toolchain",
|
|
103
|
+
"vectors/laws/m0-identification.lean.json",
|
|
104
|
+
"contracts/m0-moment-identification.json",
|
|
105
|
+
"samples/laws/m0-moment-identification/yes/sample.json",
|
|
106
|
+
"samples/laws/m0-moment-identification/no/sample.json",
|
|
107
|
+
"vectors/laws/policy.json"
|
|
108
|
+
],
|
|
109
|
+
"negative": {
|
|
110
|
+
"name": "nonuniform-as-uniform",
|
|
111
|
+
"source": "import Obligations045.M0Coincidence\nimport Mathlib.Tactic.Linarith\nimport Mathlib.Tactic.FieldSimp\nimport Mathlib.Tactic.Positivity\n\nnoncomputable section\nnamespace Obligations046.M0Identification\nopen Obligations045.M0Coincidence\n\ndef powers (ws : List \u211d) (k : \u2115) : \u211d := (ws.map (fun w => w^k)).sum\n\ndef m1 (p : \u211d) (ws : List \u211d) := p*ws.sum\ndef m2 (p : \u211d) (ws : List \u211d) := p^2*ws.sum^2+p*(1-p)*powers ws 2\ndef m3 (p : \u211d) (ws : List \u211d) := p^3*ws.sum^3+3*p^2*(1-p)*ws.sum*powers ws 2+p*(1-p)*(1-2*p)*powers ws 3\ndef m4 (p : \u211d) (ws : List \u211d) := p^4*ws.sum^4+6*p^3*(1-p)*ws.sum^2*powers ws 2+3*(p*(1-p))^2*(powers ws 2)^2+4*p^2*(1-p)*(1-2*p)*ws.sum*powers ws 3+p*(1-p)*(1-6*p*(1-p))*powers ws 4\n\ntheorem expect_quartic (p : \u211d) (ws : List \u211d) (a b d e f : \u211d) :\n expect p ws (fun x => a*x^4+b*x^3+d*x^2+e*x+f) =\n a*m4 p ws+b*m3 p ws+d*m2 p ws+e*m1 p ws+f := by\n induction ws generalizing a b d e f with\n | nil => simp [expect, m1, m2, m3, m4, powers]\n | cons w ws ih =>\n have hf : (fun x : \u211d => a*(w+x)^4+b*(w+x)^3+d*(w+x)^2+e*(w+x)+f) =\n (fun x => a*x^4+(4*a*w+b)*x^3+(6*a*w^2+3*b*w+d)*x^2+\n (4*a*w^3+3*b*w^2+2*d*w+e)*x+(a*w^4+b*w^3+d*w^2+e*w+f)) := by\n funext x\n ring\n simp only [expect, hf]\n rw [ih, ih]\n simp only [m1, m2, m3, m4, List.sum_cons, powers, List.map_cons]\n ring\n\ndef r2 (p B : \u211d) := p^2+(1-p)^2+2*p*(1-p)*B\ndef r4 (p B C E : \u211d) := p^4+(1-p)^4+6*(p^2+(1-p)^2)*p*(1-p)*B-\n 4*p*(1-p)*(1-2*p)^2*C+6*(p*(1-p))^2*B^2+2*p*(1-p)*(1-6*p*(1-p))*E\n\ntheorem fourth_coincidence (p c : \u211d) (ws : List \u211d) (hw : ws.sum = 1) :\n expect p ws (fun x => ((1-c)*p+c*x)^4+(1-((1-c)*p+c*x))^4) =\n r4 p (c^2*powers ws 2) (c^3*powers ws 3) (c^4*powers ws 4) := by\n have hf : (fun x : \u211d => ((1-c)*p+c*x)^4+(1-((1-c)*p+c*x))^4) =\n (fun x => (2*c^4)*x^4+(4*c^3*(2*(1-c)*p-1))*x^3+\n (6*c^2*(((1-c)*p)^2+(1-(1-c)*p)^2))*x^2+\n (4*c*(((1-c)*p)^3-(1-(1-c)*p)^3))*x+\n (((1-c)*p)^4+(1-(1-c)*p)^4)) := by\n funext x\n ring\n rw [hf, expect_quartic]\n simp only [m1, m2, m3, m4, hw, r4]\n ring\n\ndef uniformR4 (p B x : \u211d) := r4 p B (B*x) (B*x^2)\n\ntheorem uniform_fourth_strict (p B x y : \u211d) (hp : 0 < p) (hp1 : p < 1)\n (hB : 0 < B) (hx : 0 < x) (hy : x < y) (hy1 : y \u2264 1) :\n uniformR4 p B y < uniformR4 p B x := by\n have ha : 0 < p*(1-p) := mul_pos hp (sub_pos.mpr hp1)\n have hs : 0 < x+y := by linarith\n have hs2 : x+y \u2264 2 := by linarith\n have hd : 0 \u2264 (1-2*p)^2 := sq_nonneg _\n have hn : (1-6*p*(1-p))*(x+y)-2*(1-2*p)^2 < 0 := by\n by_cases h : 0 \u2264 1-6*p*(1-p)\n \u00b7 have hh := mul_le_mul_of_nonneg_left hs2 h\n nlinarith [sq_nonneg (1-2*p)]\n \u00b7 have hh : (1-6*p*(1-p))*(x+y) < 0 := mul_neg_of_neg_of_pos (lt_of_not_ge h) hs\n nlinarith\n have hf : uniformR4 p B y-uniformR4 p B x =\n 2*p*(1-p)*B*(y-x)*((1-6*p*(1-p))*(x+y)-2*(1-2*p)^2) := by\n unfold uniformR4 r4\n ring\n have hp1' : 0 < 1-p := sub_pos.mpr hp1\n have hgap : 0 < y-x := sub_pos.mpr hy\n have hpos : 0 < 2*p*(1-p)*B*(y-x) := by positivity\n have := mul_neg_of_pos_of_neg hpos hn\n linarith\n\ntheorem uniform_pair_fourth_injective (p B\u2081 B\u2082 x\u2081 x\u2082 : \u211d)\n (hp : 0 < p) (hp1 : p < 1) (hB\u2081 : 0 < B\u2081) (hB\u2082 : 0 < B\u2082)\n (hx\u2081 : 0 < x\u2081) (hx\u2082 : 0 < x\u2082) (hx\u20811 : x\u2081 \u2264 1) (hx\u20821 : x\u2082 \u2264 1)\n (h2 : r2 p B\u2081 = r2 p B\u2082)\n (h4 : uniformR4 p B\u2081 x\u2081 = uniformR4 p B\u2082 x\u2082) : B\u2081 = B\u2082 \u2227 x\u2081 = x\u2082 := by\n have ha : 0 < p*(1-p) := mul_pos hp (sub_pos.mpr hp1)\n have hB : B\u2081 = B\u2082 := by unfold r2 at h2; nlinarith\n subst B\u2082\n refine \u27e8rfl, ?_\u27e9\n rcases lt_trichotomy x\u2081 x\u2082 with h|h|h\n \u00b7 have := uniform_fourth_strict p B\u2081 x\u2081 x\u2082 hp hp1 hB\u2081 hx\u2081 h hx\u20821\n linarith\n \u00b7 exact h\n \u00b7 have := uniform_fourth_strict p B\u2081 x\u2082 x\u2081 hp hp1 hB\u2081 hx\u2082 h hx\u20811\n linarith\n\n-- Recovery is algebraic only after the explicitly uniform moment model has been justified.\ntheorem recover_uniform_parameters (B x c K : \u211d) (hx : x \u2260 0)\n (hB : B = c*x) (hK : c = K*x) : c = B/x \u2227 K = B/x^2 := by\n constructor\n \u00b7 apply (eq_div_iff hx).mpr\n nlinarith\n \u00b7 apply (eq_div_iff (pow_ne_zero 2 hx)).mpr\n nlinarith [hB, congrArg (fun t : \u211d => t*x) hK]\n\ntheorem uniform_cK_injective (p c\u2081 c\u2082 K\u2081 K\u2082 : \u211d)\n (hp : 0 < p) (hp1 : p < 1) (hc\u2081 : 0 < c\u2081) (hc\u2082 : 0 < c\u2082)\n (hc\u20811 : c\u2081 \u2264 1) (hc\u20821 : c\u2082 \u2264 1) (hK\u2081 : 1 \u2264 K\u2081) (hK\u2082 : 1 \u2264 K\u2082)\n (h2 : r2 p (c\u2081^2/K\u2081) = r2 p (c\u2082^2/K\u2082))\n (h4 : r4 p (c\u2081^2/K\u2081) (c\u2081^3/K\u2081^2) (c\u2081^4/K\u2081^3) =\n r4 p (c\u2082^2/K\u2082) (c\u2082^3/K\u2082^2) (c\u2082^4/K\u2082^3)) : c\u2081 = c\u2082 \u2227 K\u2081 = K\u2082 := by\n have hK\u20810 : 0 < K\u2081 := by linarith\n have hK\u20820 : 0 < K\u2082 := by linarith\n have hf (c K : \u211d) : r4 p (c^2/K) (c^3/K^2) (c^4/K^3) =\n uniformR4 p (c^2/K) (c/K) := by simp only [uniformR4, r4]; ring\n rw [hf, hf] at h4\n have h := uniform_pair_fourth_injective p (c\u2081^2/K\u2081) (c\u2082^2/K\u2082) (c\u2081/K\u2081) (c\u2082/K\u2082)\n hp hp1 (by positivity) (by positivity) (by positivity) (by positivity)\n ((div_le_one hK\u20810).mpr (by linarith)) ((div_le_one hK\u20820).mpr (by linarith)) h2 h4\n have rec (c K : \u211d) (hc : 0 < c) (hK : 0 < K) :\n c = (c^2/K)/(c/K) \u2227 K = (c^2/K)/(c/K)^2 := by\n have hb : c^2/K = c*(c/K) := by ring\n have hk : c = K*(c/K) := by field_simp [ne_of_gt hK]\n exact recover_uniform_parameters (c^2/K) (c/K) c K (ne_of_gt (div_pos hc hK)) hb hk\n have h\u2081 := rec c\u2081 K\u2081 hc\u2081 hK\u20810\n have h\u2082 := rec c\u2082 K\u2082 hc\u2082 hK\u20820\n constructor\n \u00b7 rw [h\u2081.1, h\u2082.1, h.1, h.2]\n \u00b7 rw [h\u2081.2, h\u2082.2, h.1, h.2]\n\ndef weightsA : List \u211d := List.replicate 36 (1/42) ++ List.replicate 3 (1/21)\ndef weightsB : List \u211d := List.replicate 48 (1/96) ++ List.replicate 16 (1/32)\n\ntheorem nonuniform_normalized : weightsA.sum = 1 \u2227 weightsB.sum = 1 := by\n norm_num [weightsA, weightsB, List.sum_replicate]\n\ntheorem nonuniform_power_collision :\n (7/10:\u211d)^2*powers weightsA 2 = (4/5:\u211d)^2*powers weightsB 2 \u2227\n (7/10:\u211d)^3*powers weightsA 3 = (4/5:\u211d)^3*powers weightsB 3 \u2227\n (7/10:\u211d)^4*powers weightsA 4 = (4/5:\u211d)^4*powers weightsB 4 := by\n norm_num [powers, weightsA, weightsB, List.sum_replicate]\n\ntheorem nonuniform_same_pair_fourth (p : \u211d) :\n r2 p ((7/10)^2*powers weightsA 2) = r2 p ((4/5)^2*powers weightsB 2) \u2227\n r4 p ((7/10)^2*powers weightsA 2) ((7/10)^3*powers weightsA 3) ((7/10)^4*powers weightsA 4) =\n r4 p ((4/5)^2*powers weightsB 2) ((4/5)^3*powers weightsB 3) ((4/5)^4*powers weightsB 4) := by\n obtain \u27e8h2,h3,h4\u27e9 := nonuniform_power_collision\n exact \u27e8congrArg (r2 p) h2, by rw [h2,h3,h4]\u27e9\n\ntheorem nonuniform_distinct_parameters :\n (7/10:\u211d) \u2260 4/5 \u2227 (1:\u211d)/powers weightsA 2 = 147/4 \u2227\n (1:\u211d)/powers weightsB 2 = 48 := by\n norm_num [powers, weightsA, weightsB, List.sum_replicate]\n\n-- Population expectations themselves coincide, not just invented summaries.\ntheorem nonuniform_actual_fourth_collision (p : \u211d) :\n expect p weightsA (fun x => ((1-(7/10))*p+(7/10)*x)^4+(1-((1-(7/10))*p+(7/10)*x))^4) =\n expect p weightsB (fun x => ((1-(4/5))*p+(4/5)*x)^4+(1-((1-(4/5))*p+(4/5)*x))^4) := by\n rw [fourth_coincidence p (7/10) weightsA nonuniform_normalized.1,\n fourth_coincidence p (4/5) weightsB nonuniform_normalized.2]\n exact (nonuniform_same_pair_fourth p).2\n\n\ndef uniformWeights (n : \u2115) : List \u211d := List.replicate n (1/(n:\u211d))\n\ntheorem uniform_normalized (n : \u2115) (hn : 0 < n) : (uniformWeights n).sum = 1 := by\n have hn0 : (n:\u211d) \u2260 0 := by exact_mod_cast (Nat.ne_of_gt hn)\n simp [uniformWeights, List.sum_replicate, hn0]\n\ntheorem uniform_powers (n k : \u2115) : powers (uniformWeights n) k = (n:\u211d)*(1/(n:\u211d))^k := by\n simp [powers, uniformWeights, List.sum_replicate]\n\ntheorem uniform_population_pair (p c : \u211d) (n : \u2115) (hn : 0 < n) :\n expect p (uniformWeights n) (fun x => ((1-c)*p+c*x)^2+(1-((1-c)*p+c*x))^2) =\n r2 p (c^2/(n:\u211d)) := by\n rw [pair_coincidence p c (uniformWeights n) (uniform_normalized n hn)]\n change p^2+(1-p)^2+2*c^2*p*(1-p)*powers (uniformWeights n) 2 = _\n rw [uniform_powers]\n unfold r2\n have hn0 : (n:\u211d) \u2260 0 := by exact_mod_cast (Nat.ne_of_gt hn)\n field_simp\n ring\n\ntheorem uniform_population_fourth (p c : \u211d) (n : \u2115) (hn : 0 < n) :\n expect p (uniformWeights n) (fun x => ((1-c)*p+c*x)^4+(1-((1-c)*p+c*x))^4) =\n r4 p (c^2/(n:\u211d)) (c^3/(n:\u211d)^2) (c^4/(n:\u211d)^3) := by\n rw [fourth_coincidence p c (uniformWeights n) (uniform_normalized n hn)]\n rw [uniform_powers, uniform_powers, uniform_powers]\n have hn0 : (n:\u211d) \u2260 0 := by exact_mod_cast (Nat.ne_of_gt hn)\n congr 1 <;> field_simp <;> ring\n\n\ntheorem uniform_population_identification (p c\u2081 c\u2082 : \u211d) (n\u2081 n\u2082 : \u2115)\n (hp : 0 < p) (hp1 : p < 1) (hc\u2081 : 0 < c\u2081) (hc\u2082 : 0 < c\u2082)\n (hc\u20811 : c\u2081 \u2264 1) (hc\u20821 : c\u2082 \u2264 1) (hn\u2081 : 0 < n\u2081) (hn\u2082 : 0 < n\u2082)\n (h2 : expect p (uniformWeights n\u2081) (fun x => ((1-c\u2081)*p+c\u2081*x)^2+(1-((1-c\u2081)*p+c\u2081*x))^2) =\n expect p (uniformWeights n\u2082) (fun x => ((1-c\u2082)*p+c\u2082*x)^2+(1-((1-c\u2082)*p+c\u2082*x))^2))\n (h4 : expect p (uniformWeights n\u2081) (fun x => ((1-c\u2081)*p+c\u2081*x)^4+(1-((1-c\u2081)*p+c\u2081*x))^4) =\n expect p (uniformWeights n\u2082) (fun x => ((1-c\u2082)*p+c\u2082*x)^4+(1-((1-c\u2082)*p+c\u2082*x))^4)) :\n c\u2081 = c\u2082 \u2227 n\u2081 = n\u2082 := by\n rw [uniform_population_pair p c\u2081 n\u2081 hn\u2081, uniform_population_pair p c\u2082 n\u2082 hn\u2082] at h2\n rw [uniform_population_fourth p c\u2081 n\u2081 hn\u2081, uniform_population_fourth p c\u2082 n\u2082 hn\u2082] at h4\n have h := uniform_cK_injective p c\u2081 c\u2082 (n\u2081:\u211d) (n\u2082:\u211d) hp hp1 hc\u2081 hc\u2082 hc\u20811 hc\u20821\n (by exact_mod_cast hn\u2081) (by exact_mod_cast hn\u2082) h2 h4\n exact \u27e8h.1, by exact_mod_cast h.2\u27e9\n\ntheorem unknown_p_alias (p : \u211d) : r2 p 1 = 1 \u2227 r4 p 1 1 1 = 1 := by\n constructor <;> simp only [r2, r4] <;> ring\n\ntheorem zero_c_alias (p : \u211d) : r2 p 0 = p^2+(1-p)^2 \u2227\n r4 p 0 0 0 = p^4+(1-p)^4 := by\n constructor <;> simp only [r2, r4] <;> ring\n\nend Obligations046.M0Identification\n\nopen Obligations046.M0Identification\nexample : (r2 (3/4) ((7/10)^2*powers weightsA 2) = r2 (3/4) ((4/5)^2*powers weightsB 2) \u2227\n r4 (3/4) ((7/10)^2*powers weightsA 2) ((7/10)^3*powers weightsA 3) ((7/10)^4*powers weightsA 4) =\n r4 (3/4) ((4/5)^2*powers weightsB 2) ((4/5)^3*powers weightsB 3) ((4/5)^4*powers weightsB 4)) \u2192 (7/10:\u211d) = 4/5 := by\n norm_num [r2,r4,powers,weightsA,weightsB,List.sum_replicate]\n",
|
|
112
|
+
"exitCode": 1,
|
|
113
|
+
"cause": [
|
|
114
|
+
"unsolved goals"
|
|
115
|
+
]
|
|
116
|
+
},
|
|
117
|
+
"extraNegatives": [
|
|
118
|
+
{
|
|
119
|
+
"name": "unknown-p-as-known",
|
|
120
|
+
"source": "import Obligations045.M0Coincidence\nimport Mathlib.Tactic.Linarith\nimport Mathlib.Tactic.FieldSimp\nimport Mathlib.Tactic.Positivity\n\nnoncomputable section\nnamespace Obligations046.M0Identification\nopen Obligations045.M0Coincidence\n\ndef powers (ws : List \u211d) (k : \u2115) : \u211d := (ws.map (fun w => w^k)).sum\n\ndef m1 (p : \u211d) (ws : List \u211d) := p*ws.sum\ndef m2 (p : \u211d) (ws : List \u211d) := p^2*ws.sum^2+p*(1-p)*powers ws 2\ndef m3 (p : \u211d) (ws : List \u211d) := p^3*ws.sum^3+3*p^2*(1-p)*ws.sum*powers ws 2+p*(1-p)*(1-2*p)*powers ws 3\ndef m4 (p : \u211d) (ws : List \u211d) := p^4*ws.sum^4+6*p^3*(1-p)*ws.sum^2*powers ws 2+3*(p*(1-p))^2*(powers ws 2)^2+4*p^2*(1-p)*(1-2*p)*ws.sum*powers ws 3+p*(1-p)*(1-6*p*(1-p))*powers ws 4\n\ntheorem expect_quartic (p : \u211d) (ws : List \u211d) (a b d e f : \u211d) :\n expect p ws (fun x => a*x^4+b*x^3+d*x^2+e*x+f) =\n a*m4 p ws+b*m3 p ws+d*m2 p ws+e*m1 p ws+f := by\n induction ws generalizing a b d e f with\n | nil => simp [expect, m1, m2, m3, m4, powers]\n | cons w ws ih =>\n have hf : (fun x : \u211d => a*(w+x)^4+b*(w+x)^3+d*(w+x)^2+e*(w+x)+f) =\n (fun x => a*x^4+(4*a*w+b)*x^3+(6*a*w^2+3*b*w+d)*x^2+\n (4*a*w^3+3*b*w^2+2*d*w+e)*x+(a*w^4+b*w^3+d*w^2+e*w+f)) := by\n funext x\n ring\n simp only [expect, hf]\n rw [ih, ih]\n simp only [m1, m2, m3, m4, List.sum_cons, powers, List.map_cons]\n ring\n\ndef r2 (p B : \u211d) := p^2+(1-p)^2+2*p*(1-p)*B\ndef r4 (p B C E : \u211d) := p^4+(1-p)^4+6*(p^2+(1-p)^2)*p*(1-p)*B-\n 4*p*(1-p)*(1-2*p)^2*C+6*(p*(1-p))^2*B^2+2*p*(1-p)*(1-6*p*(1-p))*E\n\ntheorem fourth_coincidence (p c : \u211d) (ws : List \u211d) (hw : ws.sum = 1) :\n expect p ws (fun x => ((1-c)*p+c*x)^4+(1-((1-c)*p+c*x))^4) =\n r4 p (c^2*powers ws 2) (c^3*powers ws 3) (c^4*powers ws 4) := by\n have hf : (fun x : \u211d => ((1-c)*p+c*x)^4+(1-((1-c)*p+c*x))^4) =\n (fun x => (2*c^4)*x^4+(4*c^3*(2*(1-c)*p-1))*x^3+\n (6*c^2*(((1-c)*p)^2+(1-(1-c)*p)^2))*x^2+\n (4*c*(((1-c)*p)^3-(1-(1-c)*p)^3))*x+\n (((1-c)*p)^4+(1-(1-c)*p)^4)) := by\n funext x\n ring\n rw [hf, expect_quartic]\n simp only [m1, m2, m3, m4, hw, r4]\n ring\n\ndef uniformR4 (p B x : \u211d) := r4 p B (B*x) (B*x^2)\n\ntheorem uniform_fourth_strict (p B x y : \u211d) (hp : 0 < p) (hp1 : p < 1)\n (hB : 0 < B) (hx : 0 < x) (hy : x < y) (hy1 : y \u2264 1) :\n uniformR4 p B y < uniformR4 p B x := by\n have ha : 0 < p*(1-p) := mul_pos hp (sub_pos.mpr hp1)\n have hs : 0 < x+y := by linarith\n have hs2 : x+y \u2264 2 := by linarith\n have hd : 0 \u2264 (1-2*p)^2 := sq_nonneg _\n have hn : (1-6*p*(1-p))*(x+y)-2*(1-2*p)^2 < 0 := by\n by_cases h : 0 \u2264 1-6*p*(1-p)\n \u00b7 have hh := mul_le_mul_of_nonneg_left hs2 h\n nlinarith [sq_nonneg (1-2*p)]\n \u00b7 have hh : (1-6*p*(1-p))*(x+y) < 0 := mul_neg_of_neg_of_pos (lt_of_not_ge h) hs\n nlinarith\n have hf : uniformR4 p B y-uniformR4 p B x =\n 2*p*(1-p)*B*(y-x)*((1-6*p*(1-p))*(x+y)-2*(1-2*p)^2) := by\n unfold uniformR4 r4\n ring\n have hp1' : 0 < 1-p := sub_pos.mpr hp1\n have hgap : 0 < y-x := sub_pos.mpr hy\n have hpos : 0 < 2*p*(1-p)*B*(y-x) := by positivity\n have := mul_neg_of_pos_of_neg hpos hn\n linarith\n\ntheorem uniform_pair_fourth_injective (p B\u2081 B\u2082 x\u2081 x\u2082 : \u211d)\n (hp : 0 < p) (hp1 : p < 1) (hB\u2081 : 0 < B\u2081) (hB\u2082 : 0 < B\u2082)\n (hx\u2081 : 0 < x\u2081) (hx\u2082 : 0 < x\u2082) (hx\u20811 : x\u2081 \u2264 1) (hx\u20821 : x\u2082 \u2264 1)\n (h2 : r2 p B\u2081 = r2 p B\u2082)\n (h4 : uniformR4 p B\u2081 x\u2081 = uniformR4 p B\u2082 x\u2082) : B\u2081 = B\u2082 \u2227 x\u2081 = x\u2082 := by\n have ha : 0 < p*(1-p) := mul_pos hp (sub_pos.mpr hp1)\n have hB : B\u2081 = B\u2082 := by unfold r2 at h2; nlinarith\n subst B\u2082\n refine \u27e8rfl, ?_\u27e9\n rcases lt_trichotomy x\u2081 x\u2082 with h|h|h\n \u00b7 have := uniform_fourth_strict p B\u2081 x\u2081 x\u2082 hp hp1 hB\u2081 hx\u2081 h hx\u20821\n linarith\n \u00b7 exact h\n \u00b7 have := uniform_fourth_strict p B\u2081 x\u2082 x\u2081 hp hp1 hB\u2081 hx\u2082 h hx\u20811\n linarith\n\n-- Recovery is algebraic only after the explicitly uniform moment model has been justified.\ntheorem recover_uniform_parameters (B x c K : \u211d) (hx : x \u2260 0)\n (hB : B = c*x) (hK : c = K*x) : c = B/x \u2227 K = B/x^2 := by\n constructor\n \u00b7 apply (eq_div_iff hx).mpr\n nlinarith\n \u00b7 apply (eq_div_iff (pow_ne_zero 2 hx)).mpr\n nlinarith [hB, congrArg (fun t : \u211d => t*x) hK]\n\ntheorem uniform_cK_injective (p c\u2081 c\u2082 K\u2081 K\u2082 : \u211d)\n (hp : 0 < p) (hp1 : p < 1) (hc\u2081 : 0 < c\u2081) (hc\u2082 : 0 < c\u2082)\n (hc\u20811 : c\u2081 \u2264 1) (hc\u20821 : c\u2082 \u2264 1) (hK\u2081 : 1 \u2264 K\u2081) (hK\u2082 : 1 \u2264 K\u2082)\n (h2 : r2 p (c\u2081^2/K\u2081) = r2 p (c\u2082^2/K\u2082))\n (h4 : r4 p (c\u2081^2/K\u2081) (c\u2081^3/K\u2081^2) (c\u2081^4/K\u2081^3) =\n r4 p (c\u2082^2/K\u2082) (c\u2082^3/K\u2082^2) (c\u2082^4/K\u2082^3)) : c\u2081 = c\u2082 \u2227 K\u2081 = K\u2082 := by\n have hK\u20810 : 0 < K\u2081 := by linarith\n have hK\u20820 : 0 < K\u2082 := by linarith\n have hf (c K : \u211d) : r4 p (c^2/K) (c^3/K^2) (c^4/K^3) =\n uniformR4 p (c^2/K) (c/K) := by simp only [uniformR4, r4]; ring\n rw [hf, hf] at h4\n have h := uniform_pair_fourth_injective p (c\u2081^2/K\u2081) (c\u2082^2/K\u2082) (c\u2081/K\u2081) (c\u2082/K\u2082)\n hp hp1 (by positivity) (by positivity) (by positivity) (by positivity)\n ((div_le_one hK\u20810).mpr (by linarith)) ((div_le_one hK\u20820).mpr (by linarith)) h2 h4\n have rec (c K : \u211d) (hc : 0 < c) (hK : 0 < K) :\n c = (c^2/K)/(c/K) \u2227 K = (c^2/K)/(c/K)^2 := by\n have hb : c^2/K = c*(c/K) := by ring\n have hk : c = K*(c/K) := by field_simp [ne_of_gt hK]\n exact recover_uniform_parameters (c^2/K) (c/K) c K (ne_of_gt (div_pos hc hK)) hb hk\n have h\u2081 := rec c\u2081 K\u2081 hc\u2081 hK\u20810\n have h\u2082 := rec c\u2082 K\u2082 hc\u2082 hK\u20820\n constructor\n \u00b7 rw [h\u2081.1, h\u2082.1, h.1, h.2]\n \u00b7 rw [h\u2081.2, h\u2082.2, h.1, h.2]\n\ndef weightsA : List \u211d := List.replicate 36 (1/42) ++ List.replicate 3 (1/21)\ndef weightsB : List \u211d := List.replicate 48 (1/96) ++ List.replicate 16 (1/32)\n\ntheorem nonuniform_normalized : weightsA.sum = 1 \u2227 weightsB.sum = 1 := by\n norm_num [weightsA, weightsB, List.sum_replicate]\n\ntheorem nonuniform_power_collision :\n (7/10:\u211d)^2*powers weightsA 2 = (4/5:\u211d)^2*powers weightsB 2 \u2227\n (7/10:\u211d)^3*powers weightsA 3 = (4/5:\u211d)^3*powers weightsB 3 \u2227\n (7/10:\u211d)^4*powers weightsA 4 = (4/5:\u211d)^4*powers weightsB 4 := by\n norm_num [powers, weightsA, weightsB, List.sum_replicate]\n\ntheorem nonuniform_same_pair_fourth (p : \u211d) :\n r2 p ((7/10)^2*powers weightsA 2) = r2 p ((4/5)^2*powers weightsB 2) \u2227\n r4 p ((7/10)^2*powers weightsA 2) ((7/10)^3*powers weightsA 3) ((7/10)^4*powers weightsA 4) =\n r4 p ((4/5)^2*powers weightsB 2) ((4/5)^3*powers weightsB 3) ((4/5)^4*powers weightsB 4) := by\n obtain \u27e8h2,h3,h4\u27e9 := nonuniform_power_collision\n exact \u27e8congrArg (r2 p) h2, by rw [h2,h3,h4]\u27e9\n\ntheorem nonuniform_distinct_parameters :\n (7/10:\u211d) \u2260 4/5 \u2227 (1:\u211d)/powers weightsA 2 = 147/4 \u2227\n (1:\u211d)/powers weightsB 2 = 48 := by\n norm_num [powers, weightsA, weightsB, List.sum_replicate]\n\n-- Population expectations themselves coincide, not just invented summaries.\ntheorem nonuniform_actual_fourth_collision (p : \u211d) :\n expect p weightsA (fun x => ((1-(7/10))*p+(7/10)*x)^4+(1-((1-(7/10))*p+(7/10)*x))^4) =\n expect p weightsB (fun x => ((1-(4/5))*p+(4/5)*x)^4+(1-((1-(4/5))*p+(4/5)*x))^4) := by\n rw [fourth_coincidence p (7/10) weightsA nonuniform_normalized.1,\n fourth_coincidence p (4/5) weightsB nonuniform_normalized.2]\n exact (nonuniform_same_pair_fourth p).2\n\n\ndef uniformWeights (n : \u2115) : List \u211d := List.replicate n (1/(n:\u211d))\n\ntheorem uniform_normalized (n : \u2115) (hn : 0 < n) : (uniformWeights n).sum = 1 := by\n have hn0 : (n:\u211d) \u2260 0 := by exact_mod_cast (Nat.ne_of_gt hn)\n simp [uniformWeights, List.sum_replicate, hn0]\n\ntheorem uniform_powers (n k : \u2115) : powers (uniformWeights n) k = (n:\u211d)*(1/(n:\u211d))^k := by\n simp [powers, uniformWeights, List.sum_replicate]\n\ntheorem uniform_population_pair (p c : \u211d) (n : \u2115) (hn : 0 < n) :\n expect p (uniformWeights n) (fun x => ((1-c)*p+c*x)^2+(1-((1-c)*p+c*x))^2) =\n r2 p (c^2/(n:\u211d)) := by\n rw [pair_coincidence p c (uniformWeights n) (uniform_normalized n hn)]\n change p^2+(1-p)^2+2*c^2*p*(1-p)*powers (uniformWeights n) 2 = _\n rw [uniform_powers]\n unfold r2\n have hn0 : (n:\u211d) \u2260 0 := by exact_mod_cast (Nat.ne_of_gt hn)\n field_simp\n ring\n\ntheorem uniform_population_fourth (p c : \u211d) (n : \u2115) (hn : 0 < n) :\n expect p (uniformWeights n) (fun x => ((1-c)*p+c*x)^4+(1-((1-c)*p+c*x))^4) =\n r4 p (c^2/(n:\u211d)) (c^3/(n:\u211d)^2) (c^4/(n:\u211d)^3) := by\n rw [fourth_coincidence p c (uniformWeights n) (uniform_normalized n hn)]\n rw [uniform_powers, uniform_powers, uniform_powers]\n have hn0 : (n:\u211d) \u2260 0 := by exact_mod_cast (Nat.ne_of_gt hn)\n congr 1 <;> field_simp <;> ring\n\n\ntheorem uniform_population_identification (p c\u2081 c\u2082 : \u211d) (n\u2081 n\u2082 : \u2115)\n (hp : 0 < p) (hp1 : p < 1) (hc\u2081 : 0 < c\u2081) (hc\u2082 : 0 < c\u2082)\n (hc\u20811 : c\u2081 \u2264 1) (hc\u20821 : c\u2082 \u2264 1) (hn\u2081 : 0 < n\u2081) (hn\u2082 : 0 < n\u2082)\n (h2 : expect p (uniformWeights n\u2081) (fun x => ((1-c\u2081)*p+c\u2081*x)^2+(1-((1-c\u2081)*p+c\u2081*x))^2) =\n expect p (uniformWeights n\u2082) (fun x => ((1-c\u2082)*p+c\u2082*x)^2+(1-((1-c\u2082)*p+c\u2082*x))^2))\n (h4 : expect p (uniformWeights n\u2081) (fun x => ((1-c\u2081)*p+c\u2081*x)^4+(1-((1-c\u2081)*p+c\u2081*x))^4) =\n expect p (uniformWeights n\u2082) (fun x => ((1-c\u2082)*p+c\u2082*x)^4+(1-((1-c\u2082)*p+c\u2082*x))^4)) :\n c\u2081 = c\u2082 \u2227 n\u2081 = n\u2082 := by\n rw [uniform_population_pair p c\u2081 n\u2081 hn\u2081, uniform_population_pair p c\u2082 n\u2082 hn\u2082] at h2\n rw [uniform_population_fourth p c\u2081 n\u2081 hn\u2081, uniform_population_fourth p c\u2082 n\u2082 hn\u2082] at h4\n have h := uniform_cK_injective p c\u2081 c\u2082 (n\u2081:\u211d) (n\u2082:\u211d) hp hp1 hc\u2081 hc\u2082 hc\u20811 hc\u20821\n (by exact_mod_cast hn\u2081) (by exact_mod_cast hn\u2082) h2 h4\n exact \u27e8h.1, by exact_mod_cast h.2\u27e9\n\ntheorem unknown_p_alias (p : \u211d) : r2 p 1 = 1 \u2227 r4 p 1 1 1 = 1 := by\n constructor <;> simp only [r2, r4] <;> ring\n\ntheorem zero_c_alias (p : \u211d) : r2 p 0 = p^2+(1-p)^2 \u2227\n r4 p 0 0 0 = p^4+(1-p)^4 := by\n constructor <;> simp only [r2, r4] <;> ring\n\nend Obligations046.M0Identification\n\nopen Obligations046.M0Identification\nexample : (r2 (2/3) 1 = r2 (3/4) 1 \u2227 r4 (2/3) 1 1 1 = r4 (3/4) 1 1 1) \u2192 (2/3:\u211d) = 3/4 := by\n norm_num [r2,r4]\n",
|
|
121
|
+
"exitCode": 1,
|
|
122
|
+
"cause": [
|
|
123
|
+
"unsolved goals"
|
|
124
|
+
]
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"name": "zero-c-as-identifiable",
|
|
128
|
+
"source": "import Obligations045.M0Coincidence\nimport Mathlib.Tactic.Linarith\nimport Mathlib.Tactic.FieldSimp\nimport Mathlib.Tactic.Positivity\n\nnoncomputable section\nnamespace Obligations046.M0Identification\nopen Obligations045.M0Coincidence\n\ndef powers (ws : List \u211d) (k : \u2115) : \u211d := (ws.map (fun w => w^k)).sum\n\ndef m1 (p : \u211d) (ws : List \u211d) := p*ws.sum\ndef m2 (p : \u211d) (ws : List \u211d) := p^2*ws.sum^2+p*(1-p)*powers ws 2\ndef m3 (p : \u211d) (ws : List \u211d) := p^3*ws.sum^3+3*p^2*(1-p)*ws.sum*powers ws 2+p*(1-p)*(1-2*p)*powers ws 3\ndef m4 (p : \u211d) (ws : List \u211d) := p^4*ws.sum^4+6*p^3*(1-p)*ws.sum^2*powers ws 2+3*(p*(1-p))^2*(powers ws 2)^2+4*p^2*(1-p)*(1-2*p)*ws.sum*powers ws 3+p*(1-p)*(1-6*p*(1-p))*powers ws 4\n\ntheorem expect_quartic (p : \u211d) (ws : List \u211d) (a b d e f : \u211d) :\n expect p ws (fun x => a*x^4+b*x^3+d*x^2+e*x+f) =\n a*m4 p ws+b*m3 p ws+d*m2 p ws+e*m1 p ws+f := by\n induction ws generalizing a b d e f with\n | nil => simp [expect, m1, m2, m3, m4, powers]\n | cons w ws ih =>\n have hf : (fun x : \u211d => a*(w+x)^4+b*(w+x)^3+d*(w+x)^2+e*(w+x)+f) =\n (fun x => a*x^4+(4*a*w+b)*x^3+(6*a*w^2+3*b*w+d)*x^2+\n (4*a*w^3+3*b*w^2+2*d*w+e)*x+(a*w^4+b*w^3+d*w^2+e*w+f)) := by\n funext x\n ring\n simp only [expect, hf]\n rw [ih, ih]\n simp only [m1, m2, m3, m4, List.sum_cons, powers, List.map_cons]\n ring\n\ndef r2 (p B : \u211d) := p^2+(1-p)^2+2*p*(1-p)*B\ndef r4 (p B C E : \u211d) := p^4+(1-p)^4+6*(p^2+(1-p)^2)*p*(1-p)*B-\n 4*p*(1-p)*(1-2*p)^2*C+6*(p*(1-p))^2*B^2+2*p*(1-p)*(1-6*p*(1-p))*E\n\ntheorem fourth_coincidence (p c : \u211d) (ws : List \u211d) (hw : ws.sum = 1) :\n expect p ws (fun x => ((1-c)*p+c*x)^4+(1-((1-c)*p+c*x))^4) =\n r4 p (c^2*powers ws 2) (c^3*powers ws 3) (c^4*powers ws 4) := by\n have hf : (fun x : \u211d => ((1-c)*p+c*x)^4+(1-((1-c)*p+c*x))^4) =\n (fun x => (2*c^4)*x^4+(4*c^3*(2*(1-c)*p-1))*x^3+\n (6*c^2*(((1-c)*p)^2+(1-(1-c)*p)^2))*x^2+\n (4*c*(((1-c)*p)^3-(1-(1-c)*p)^3))*x+\n (((1-c)*p)^4+(1-(1-c)*p)^4)) := by\n funext x\n ring\n rw [hf, expect_quartic]\n simp only [m1, m2, m3, m4, hw, r4]\n ring\n\ndef uniformR4 (p B x : \u211d) := r4 p B (B*x) (B*x^2)\n\ntheorem uniform_fourth_strict (p B x y : \u211d) (hp : 0 < p) (hp1 : p < 1)\n (hB : 0 < B) (hx : 0 < x) (hy : x < y) (hy1 : y \u2264 1) :\n uniformR4 p B y < uniformR4 p B x := by\n have ha : 0 < p*(1-p) := mul_pos hp (sub_pos.mpr hp1)\n have hs : 0 < x+y := by linarith\n have hs2 : x+y \u2264 2 := by linarith\n have hd : 0 \u2264 (1-2*p)^2 := sq_nonneg _\n have hn : (1-6*p*(1-p))*(x+y)-2*(1-2*p)^2 < 0 := by\n by_cases h : 0 \u2264 1-6*p*(1-p)\n \u00b7 have hh := mul_le_mul_of_nonneg_left hs2 h\n nlinarith [sq_nonneg (1-2*p)]\n \u00b7 have hh : (1-6*p*(1-p))*(x+y) < 0 := mul_neg_of_neg_of_pos (lt_of_not_ge h) hs\n nlinarith\n have hf : uniformR4 p B y-uniformR4 p B x =\n 2*p*(1-p)*B*(y-x)*((1-6*p*(1-p))*(x+y)-2*(1-2*p)^2) := by\n unfold uniformR4 r4\n ring\n have hp1' : 0 < 1-p := sub_pos.mpr hp1\n have hgap : 0 < y-x := sub_pos.mpr hy\n have hpos : 0 < 2*p*(1-p)*B*(y-x) := by positivity\n have := mul_neg_of_pos_of_neg hpos hn\n linarith\n\ntheorem uniform_pair_fourth_injective (p B\u2081 B\u2082 x\u2081 x\u2082 : \u211d)\n (hp : 0 < p) (hp1 : p < 1) (hB\u2081 : 0 < B\u2081) (hB\u2082 : 0 < B\u2082)\n (hx\u2081 : 0 < x\u2081) (hx\u2082 : 0 < x\u2082) (hx\u20811 : x\u2081 \u2264 1) (hx\u20821 : x\u2082 \u2264 1)\n (h2 : r2 p B\u2081 = r2 p B\u2082)\n (h4 : uniformR4 p B\u2081 x\u2081 = uniformR4 p B\u2082 x\u2082) : B\u2081 = B\u2082 \u2227 x\u2081 = x\u2082 := by\n have ha : 0 < p*(1-p) := mul_pos hp (sub_pos.mpr hp1)\n have hB : B\u2081 = B\u2082 := by unfold r2 at h2; nlinarith\n subst B\u2082\n refine \u27e8rfl, ?_\u27e9\n rcases lt_trichotomy x\u2081 x\u2082 with h|h|h\n \u00b7 have := uniform_fourth_strict p B\u2081 x\u2081 x\u2082 hp hp1 hB\u2081 hx\u2081 h hx\u20821\n linarith\n \u00b7 exact h\n \u00b7 have := uniform_fourth_strict p B\u2081 x\u2082 x\u2081 hp hp1 hB\u2081 hx\u2082 h hx\u20811\n linarith\n\n-- Recovery is algebraic only after the explicitly uniform moment model has been justified.\ntheorem recover_uniform_parameters (B x c K : \u211d) (hx : x \u2260 0)\n (hB : B = c*x) (hK : c = K*x) : c = B/x \u2227 K = B/x^2 := by\n constructor\n \u00b7 apply (eq_div_iff hx).mpr\n nlinarith\n \u00b7 apply (eq_div_iff (pow_ne_zero 2 hx)).mpr\n nlinarith [hB, congrArg (fun t : \u211d => t*x) hK]\n\ntheorem uniform_cK_injective (p c\u2081 c\u2082 K\u2081 K\u2082 : \u211d)\n (hp : 0 < p) (hp1 : p < 1) (hc\u2081 : 0 < c\u2081) (hc\u2082 : 0 < c\u2082)\n (hc\u20811 : c\u2081 \u2264 1) (hc\u20821 : c\u2082 \u2264 1) (hK\u2081 : 1 \u2264 K\u2081) (hK\u2082 : 1 \u2264 K\u2082)\n (h2 : r2 p (c\u2081^2/K\u2081) = r2 p (c\u2082^2/K\u2082))\n (h4 : r4 p (c\u2081^2/K\u2081) (c\u2081^3/K\u2081^2) (c\u2081^4/K\u2081^3) =\n r4 p (c\u2082^2/K\u2082) (c\u2082^3/K\u2082^2) (c\u2082^4/K\u2082^3)) : c\u2081 = c\u2082 \u2227 K\u2081 = K\u2082 := by\n have hK\u20810 : 0 < K\u2081 := by linarith\n have hK\u20820 : 0 < K\u2082 := by linarith\n have hf (c K : \u211d) : r4 p (c^2/K) (c^3/K^2) (c^4/K^3) =\n uniformR4 p (c^2/K) (c/K) := by simp only [uniformR4, r4]; ring\n rw [hf, hf] at h4\n have h := uniform_pair_fourth_injective p (c\u2081^2/K\u2081) (c\u2082^2/K\u2082) (c\u2081/K\u2081) (c\u2082/K\u2082)\n hp hp1 (by positivity) (by positivity) (by positivity) (by positivity)\n ((div_le_one hK\u20810).mpr (by linarith)) ((div_le_one hK\u20820).mpr (by linarith)) h2 h4\n have rec (c K : \u211d) (hc : 0 < c) (hK : 0 < K) :\n c = (c^2/K)/(c/K) \u2227 K = (c^2/K)/(c/K)^2 := by\n have hb : c^2/K = c*(c/K) := by ring\n have hk : c = K*(c/K) := by field_simp [ne_of_gt hK]\n exact recover_uniform_parameters (c^2/K) (c/K) c K (ne_of_gt (div_pos hc hK)) hb hk\n have h\u2081 := rec c\u2081 K\u2081 hc\u2081 hK\u20810\n have h\u2082 := rec c\u2082 K\u2082 hc\u2082 hK\u20820\n constructor\n \u00b7 rw [h\u2081.1, h\u2082.1, h.1, h.2]\n \u00b7 rw [h\u2081.2, h\u2082.2, h.1, h.2]\n\ndef weightsA : List \u211d := List.replicate 36 (1/42) ++ List.replicate 3 (1/21)\ndef weightsB : List \u211d := List.replicate 48 (1/96) ++ List.replicate 16 (1/32)\n\ntheorem nonuniform_normalized : weightsA.sum = 1 \u2227 weightsB.sum = 1 := by\n norm_num [weightsA, weightsB, List.sum_replicate]\n\ntheorem nonuniform_power_collision :\n (7/10:\u211d)^2*powers weightsA 2 = (4/5:\u211d)^2*powers weightsB 2 \u2227\n (7/10:\u211d)^3*powers weightsA 3 = (4/5:\u211d)^3*powers weightsB 3 \u2227\n (7/10:\u211d)^4*powers weightsA 4 = (4/5:\u211d)^4*powers weightsB 4 := by\n norm_num [powers, weightsA, weightsB, List.sum_replicate]\n\ntheorem nonuniform_same_pair_fourth (p : \u211d) :\n r2 p ((7/10)^2*powers weightsA 2) = r2 p ((4/5)^2*powers weightsB 2) \u2227\n r4 p ((7/10)^2*powers weightsA 2) ((7/10)^3*powers weightsA 3) ((7/10)^4*powers weightsA 4) =\n r4 p ((4/5)^2*powers weightsB 2) ((4/5)^3*powers weightsB 3) ((4/5)^4*powers weightsB 4) := by\n obtain \u27e8h2,h3,h4\u27e9 := nonuniform_power_collision\n exact \u27e8congrArg (r2 p) h2, by rw [h2,h3,h4]\u27e9\n\ntheorem nonuniform_distinct_parameters :\n (7/10:\u211d) \u2260 4/5 \u2227 (1:\u211d)/powers weightsA 2 = 147/4 \u2227\n (1:\u211d)/powers weightsB 2 = 48 := by\n norm_num [powers, weightsA, weightsB, List.sum_replicate]\n\n-- Population expectations themselves coincide, not just invented summaries.\ntheorem nonuniform_actual_fourth_collision (p : \u211d) :\n expect p weightsA (fun x => ((1-(7/10))*p+(7/10)*x)^4+(1-((1-(7/10))*p+(7/10)*x))^4) =\n expect p weightsB (fun x => ((1-(4/5))*p+(4/5)*x)^4+(1-((1-(4/5))*p+(4/5)*x))^4) := by\n rw [fourth_coincidence p (7/10) weightsA nonuniform_normalized.1,\n fourth_coincidence p (4/5) weightsB nonuniform_normalized.2]\n exact (nonuniform_same_pair_fourth p).2\n\n\ndef uniformWeights (n : \u2115) : List \u211d := List.replicate n (1/(n:\u211d))\n\ntheorem uniform_normalized (n : \u2115) (hn : 0 < n) : (uniformWeights n).sum = 1 := by\n have hn0 : (n:\u211d) \u2260 0 := by exact_mod_cast (Nat.ne_of_gt hn)\n simp [uniformWeights, List.sum_replicate, hn0]\n\ntheorem uniform_powers (n k : \u2115) : powers (uniformWeights n) k = (n:\u211d)*(1/(n:\u211d))^k := by\n simp [powers, uniformWeights, List.sum_replicate]\n\ntheorem uniform_population_pair (p c : \u211d) (n : \u2115) (hn : 0 < n) :\n expect p (uniformWeights n) (fun x => ((1-c)*p+c*x)^2+(1-((1-c)*p+c*x))^2) =\n r2 p (c^2/(n:\u211d)) := by\n rw [pair_coincidence p c (uniformWeights n) (uniform_normalized n hn)]\n change p^2+(1-p)^2+2*c^2*p*(1-p)*powers (uniformWeights n) 2 = _\n rw [uniform_powers]\n unfold r2\n have hn0 : (n:\u211d) \u2260 0 := by exact_mod_cast (Nat.ne_of_gt hn)\n field_simp\n ring\n\ntheorem uniform_population_fourth (p c : \u211d) (n : \u2115) (hn : 0 < n) :\n expect p (uniformWeights n) (fun x => ((1-c)*p+c*x)^4+(1-((1-c)*p+c*x))^4) =\n r4 p (c^2/(n:\u211d)) (c^3/(n:\u211d)^2) (c^4/(n:\u211d)^3) := by\n rw [fourth_coincidence p c (uniformWeights n) (uniform_normalized n hn)]\n rw [uniform_powers, uniform_powers, uniform_powers]\n have hn0 : (n:\u211d) \u2260 0 := by exact_mod_cast (Nat.ne_of_gt hn)\n congr 1 <;> field_simp <;> ring\n\n\ntheorem uniform_population_identification (p c\u2081 c\u2082 : \u211d) (n\u2081 n\u2082 : \u2115)\n (hp : 0 < p) (hp1 : p < 1) (hc\u2081 : 0 < c\u2081) (hc\u2082 : 0 < c\u2082)\n (hc\u20811 : c\u2081 \u2264 1) (hc\u20821 : c\u2082 \u2264 1) (hn\u2081 : 0 < n\u2081) (hn\u2082 : 0 < n\u2082)\n (h2 : expect p (uniformWeights n\u2081) (fun x => ((1-c\u2081)*p+c\u2081*x)^2+(1-((1-c\u2081)*p+c\u2081*x))^2) =\n expect p (uniformWeights n\u2082) (fun x => ((1-c\u2082)*p+c\u2082*x)^2+(1-((1-c\u2082)*p+c\u2082*x))^2))\n (h4 : expect p (uniformWeights n\u2081) (fun x => ((1-c\u2081)*p+c\u2081*x)^4+(1-((1-c\u2081)*p+c\u2081*x))^4) =\n expect p (uniformWeights n\u2082) (fun x => ((1-c\u2082)*p+c\u2082*x)^4+(1-((1-c\u2082)*p+c\u2082*x))^4)) :\n c\u2081 = c\u2082 \u2227 n\u2081 = n\u2082 := by\n rw [uniform_population_pair p c\u2081 n\u2081 hn\u2081, uniform_population_pair p c\u2082 n\u2082 hn\u2082] at h2\n rw [uniform_population_fourth p c\u2081 n\u2081 hn\u2081, uniform_population_fourth p c\u2082 n\u2082 hn\u2082] at h4\n have h := uniform_cK_injective p c\u2081 c\u2082 (n\u2081:\u211d) (n\u2082:\u211d) hp hp1 hc\u2081 hc\u2082 hc\u20811 hc\u20821\n (by exact_mod_cast hn\u2081) (by exact_mod_cast hn\u2082) h2 h4\n exact \u27e8h.1, by exact_mod_cast h.2\u27e9\n\ntheorem unknown_p_alias (p : \u211d) : r2 p 1 = 1 \u2227 r4 p 1 1 1 = 1 := by\n constructor <;> simp only [r2, r4] <;> ring\n\ntheorem zero_c_alias (p : \u211d) : r2 p 0 = p^2+(1-p)^2 \u2227\n r4 p 0 0 0 = p^4+(1-p)^4 := by\n constructor <;> simp only [r2, r4] <;> ring\n\nend Obligations046.M0Identification\n\nopen Obligations046.M0Identification\nexample : (r2 (3/4) 0 = r2 (3/4) 0 \u2227 r4 (3/4) 0 0 0 = r4 (3/4) 0 0 0) \u2192 (2:\u211d) = 3 := by\n norm_num [r2,r4]\n",
|
|
129
|
+
"exitCode": 1,
|
|
130
|
+
"cause": [
|
|
131
|
+
"unsolved goals"
|
|
132
|
+
]
|
|
133
|
+
}
|
|
134
|
+
]
|
|
135
|
+
}
|
|
136
|
+
}
|