12345678910111213141516171819202122232425262728293031323334353637 |
- package com.oblivm.backend.circuits.arithmetic;
- import com.oblivm.backend.flexsc.CompEnv;
- public interface ArithmeticLib<T> {
- CompEnv<T> getEnv();
- T[] inputOfAlice(double d);
- T[] inputOfBob(double d);
- double outputToAlice(T[] a);
- T[] add(T[] x, T[] y);
- T[] multiply(T[] x, T[] y);
- T[] div(T[] x, T[] y);
- T[] sub(T[] x, T[] y);
- T[] publicValue(double v);
- T leq(T[] a, T[] b);
- T eq(T[] a, T[] b);
- T[] sqrt(T[] a);
- T[] toSecureInt(T[] a, IntegerLib<T> lib);
- T[] toSecureFloat(T[] a, FloatLib<T> lib);
- T[] toSecureFixPoint(T[] a, FixedPointLib<T> lib);
- int numBits();
- }
|