Spaces:
Sleeping
Sleeping
Delete codexbyte_vm.py
Browse files- codexbyte_vm.py +0 -75
codexbyte_vm.py
DELETED
|
@@ -1,75 +0,0 @@
|
|
| 1 |
-
import time
|
| 2 |
-
|
| 3 |
-
REGISTERS = {
|
| 4 |
-
"R0": "I", "R1": "J", "R2": "B", "R3": "C",
|
| 5 |
-
"R4": "K", "R5": "CF", "R6": "Ω", "R7": "R",
|
| 6 |
-
"R8": "Θ", "R9": "Λ", "R10": "u", "R11": "p",
|
| 7 |
-
}
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
class CodexByteVM:
|
| 11 |
-
def __init__(self):
|
| 12 |
-
self.state = {r: 0.0 for r in REGISTERS}
|
| 13 |
-
self.log = []
|
| 14 |
-
|
| 15 |
-
def run(self, bytecode):
|
| 16 |
-
for inst in bytecode:
|
| 17 |
-
parts = inst.split()
|
| 18 |
-
op = parts[0]
|
| 19 |
-
|
| 20 |
-
if op == "SEED":
|
| 21 |
-
reg = parts[1]
|
| 22 |
-
value = float(parts[2])
|
| 23 |
-
self.state[reg] = value
|
| 24 |
-
continue
|
| 25 |
-
|
| 26 |
-
r1, r2, rd = parts[1], parts[2], parts[3]
|
| 27 |
-
v1 = self.state.get(r1, 0.0)
|
| 28 |
-
v2 = self.state.get(r2, 0.0)
|
| 29 |
-
|
| 30 |
-
if op == "NOP":
|
| 31 |
-
pass
|
| 32 |
-
|
| 33 |
-
elif op == "IJUDGE":
|
| 34 |
-
self.state[rd] = min(1.0, v1 * self.state["R9"])
|
| 35 |
-
|
| 36 |
-
elif op == "BUPDATE":
|
| 37 |
-
self.state[rd] = min(
|
| 38 |
-
1.0,
|
| 39 |
-
self.state[rd] + 0.3 * v1 + 0.1 * v2
|
| 40 |
-
)
|
| 41 |
-
|
| 42 |
-
elif op == "CAPFLOW":
|
| 43 |
-
self.state[rd] = v1 * v2
|
| 44 |
-
|
| 45 |
-
elif op == "CAPEX2CAP":
|
| 46 |
-
self.state[rd] += 0.6 * v1
|
| 47 |
-
|
| 48 |
-
elif op == "CFLOW":
|
| 49 |
-
self.state[rd] = (
|
| 50 |
-
v1 * self.state["R10"] * self.state["R11"]
|
| 51 |
-
)
|
| 52 |
-
|
| 53 |
-
elif op == "CFOPEX":
|
| 54 |
-
self.state[rd] -= 0.2 * v2
|
| 55 |
-
|
| 56 |
-
elif op == "REINVEST":
|
| 57 |
-
self.state[rd] += 0.5 * v1
|
| 58 |
-
|
| 59 |
-
elif op == "ΩWRITE":
|
| 60 |
-
self.log.append({
|
| 61 |
-
"time": time.time(),
|
| 62 |
-
"judgment": self.state["R1"],
|
| 63 |
-
"belief": self.state["R2"],
|
| 64 |
-
"capital": self.state["R3"],
|
| 65 |
-
"capacity": self.state["R4"],
|
| 66 |
-
"cashflow": self.state["R5"],
|
| 67 |
-
})
|
| 68 |
-
|
| 69 |
-
elif op == "WLEARN":
|
| 70 |
-
self.state[rd] += 0.1 * (1.0 - self.state[rd])
|
| 71 |
-
|
| 72 |
-
return {
|
| 73 |
-
"state": self.state,
|
| 74 |
-
"ledger": self.log,
|
| 75 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|