You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
633 B

  1. template XOR() {
  2. signal input a;
  3. signal input b;
  4. signal output out;
  5. out <== a + b - 2*a*b;
  6. }
  7. template AND() {
  8. signal input a;
  9. signal input b;
  10. signal output out;
  11. out <== a*b;
  12. }
  13. template OR() {
  14. signal input a;
  15. signal input b;
  16. signal output out;
  17. out <== a + b - a*b;
  18. }
  19. template NOT() {
  20. signal input in;
  21. signal output out;
  22. out <== 1 + in - 2*in;
  23. }
  24. template NAND() {
  25. signal input a;
  26. signal input b;
  27. signal output out;
  28. out <== 1 - a*b;
  29. }
  30. template NOR() {
  31. signal input a;
  32. signal input b;
  33. signal output out;
  34. out <== a*b + 1 - a - b;
  35. }