upgrading jubjub to mal language

This commit is contained in:
ada
2020-10-23 19:01:50 +02:00
parent fea2b6c313
commit 46bcb45051

View File

@@ -1,46 +1,47 @@
(def C_D (const "0x2a9318e74bfa2b48f5fd9207e6bd7fd4292d7f6d37579d2601065fd6d6343eb1"))
(def C_ONE (const "0x0000000000000000000000000000000000000000000000000000000000000001"))
(def jjadd (fn x1 y1 x2 y2) (
(def U (mul (add (x1 y1)) (add (x2 y2))))
(enforce
(add_lc0 (x1 y1))
(add_lc1 (x2 y2))
(add_lc2 U))
(def A (mul (x2 x1)))
(def B (mul (x2 y1)))
(def C (mul (C_ONE A)))
(enforce
(add_coeff_lc0 (C_D A))
(add_lc1 B)
(add_lc2 C))
(def Px
(div (add A B)
(add C_ONE C)))
(enforce
(add_one_lc0)
(sub_lc0 C)
(add_lc1 Px)
(add_lc2 (A B)))
(def Py
(div (sub U A B)
(sub C_ONE C)))
(enforce
(add_one_lc0)
(sub_lc0 C)
(add_lc1 Py)
(add_lc2 (U A B)))
(Px Py)
)
(def input_spend (contract x1 y1 x2 y2) (
(def P (jjadd (x1 y1 x2 y2)))
(enforce
(add_lc0 Px)
(add_lc1_one)
(add_lc2 Px))
(enforce
(add_lc0 Py)
(add_lc1_one)
(add_lc2 Py))
)
(def! D "0x2a9318e74bfa2b48f5fd9207e6bd7fd4292d7f6d37579d2601065fd6d6343eb1")
(def! ONE "0x0000000000000000000000000000000000000000000000000000000000000001")
(def! jj-add (fn* [x1 y1 x2 y2] (println x1 y1 x2 y2 D ONE)))
(jj-add 1 2 3 4)
;; (def! U (mul (add (x1 y1)) (add (x2 y2))))
;; (enforce
;; (add_lc0 (x1 y1))
;; (add_lc1 (x2 y2))
;; (add_lc2 U))
;; (def A (mul (x2 x1)))
;; (def B (mul (x2 y1)))
;; (def C (mul (C_ONE A)))
;; (enforce
;; (add_coeff_lc0 (C_D A))
;; (add_lc1 B)
;; (add_lc2 C))
;; (def Px
;; (div (add A B)
;; (add C_ONE C)))
;; (enforce
;; (add_one_lc0)
;; (sub_lc0 C)
;; (add_lc1 Px)
;; (add_lc2 (A B)))
;;
;; (def Py
;; (div (sub U A B)
;; (sub C_ONE C)))
;; (enforce
;; (add_one_lc0)
;; (sub_lc0 C)
;; (add_lc1 Py)
;; (add_lc2 (U A B)))
;; (Px Py)
;; )
;; (def input_spend (contract x1 y1 x2 y2) (
;; (def P (jjadd (x1 y1 x2 y2)))
;; (enforce
;; (add_lc0 Px)
;; (add_lc1_one)
;; (add_lc2 Px))
;; (enforce
;; (add_lc0 Py)
;; (add_lc1_one)
;; (add_lc2 Py))
;; )