Browse Source

added square on lisp

plato 5 years ago
parent
commit
4aa2876c49
2 changed files with 4 additions and 3 deletions
  1. 3 3
      lisp/jubjub-mul.lisp
  2. 1 0
      lisp/lisp.rs

+ 3 - 3
lisp/jubjub-mul.lisp

@@ -8,8 +8,8 @@
 (setup
     (prove 
       (
-    (def! square (fn* [var] (
-            (def! result (alloc "square-var" square var))
+    (def! zk-square (fn* [var] (
+            (def! result (alloc "square-var" (square var)))
             (enforce  
                 (scalar::one square-var) 
                 (scalar::one square-var)
@@ -29,7 +29,7 @@
      (def! C (alloc "C" (* EDWARDS_D (* A B))))
      (def! u3 (alloc-input "u3" (/ (+ A B) (+ scalar::one C))))
      (def! v3 (alloc-input "v3" (/ (- (- U A) B) (- scalar::one C))))
-     (square param1)
+     (println 'square (zk-square param1))
   (
   (enforce  
     ((scalar::one u1) (scalar::one v1))

+ 1 - 0
lisp/lisp.rs

@@ -366,6 +366,7 @@ fn eval(mut ast: MalVal, mut env: Env) -> MalRet {
                         Ok(result.clone())
                     }
                     Sym(ref a0sym) if a0sym == "alloc" => {
+                        println!("{:?}", l);
                         let a1 = l[1].clone();
                         let value = eval(l[2].clone(), env.clone())?;
                         let result = eval(value.clone(), env.clone())?;