197c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung# model
297c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungmodel = Model()
397c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungi1 = Input("op1", "TENSOR_FLOAT32", "{2}") # a vector of 2 float32s
497c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungi2 = Input("op2", "TENSOR_FLOAT32", "{2}") # another vector of 2 float32s
597c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungb0 = Int32Scalar("b0", 0) # an int32_t scalar bias
697c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungtmp = Internal("tmp", "TENSOR_FLOAT32", "{2}")
797c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungtmp2 = Internal("tmp2", "TENSOR_FLOAT32", "{2}")
897c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungo3 = Output("op3", "TENSOR_FLOAT32", "{2}")
997c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungi4 = Input("op4", "TENSOR_FLOAT32", "{2}") # another vector of 2 float32s
1097c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungmodel = model.Operation("ADD", i1, i2, b0).To(tmp)
1197c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungmodel = model.Operation("ADD", tmp, i2, b0).To(tmp2)
1297c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungmodel = model.Operation("ADD", tmp2, i4, b0).To(o3)
1397c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung
1497c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung# Example 1. Input in operand 0,
1597c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sunginput0 = {i1: # input 0
1697c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung          [1.0, 2.0],
1797c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung          i2: # input 1
1897c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung          [3.0, 4.0],
1997c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung          i4: # input 4
2097c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung          [5.0, 6.0]}
2197c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung
2297c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sungoutput0 = {o3: # output 0
2397c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung           [9.0, 12.0]}
2497c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung
2597c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung# Instantiate an example
2697c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) SungExample((input0, output0))
2797c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung
2897c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung
2997c70d256b07031a8dc2e7f074249dda17b8c78eI-Jui (Ray) Sung
30