# /!\ DO NOT EDIT MANUALLY THIS FILE MANUALLY
# /!\ THIS FILE HAS BEEN GENERATED
description: matmul_eint_eint_6bits_u_2x3x4x_2x4x2x
program: |
  func.func @main(%x: tensor<2x3x4x!FHE.eint<6>>, %y: tensor<2x4x2x!FHE.eint<6>>) -> tensor<2x3x2x!FHE.eint<6>> {
       %0 = "FHELinalg.matmul_eint_eint"(%x, %y): (tensor<2x3x4x!FHE.eint<6>>, tensor<2x4x2x!FHE.eint<6>>) -> tensor<2x3x2x!FHE.eint<6>>
       return %0 : tensor<2x3x2x!FHE.eint<6>>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      shape: [2,3,4]
    - tensor: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      shape: [2,4,2]
    outputs:
    - tensor: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      shape: [2,3,2]
---
description: matmul_eint_eint_6bits_s_2x3x4x_2x4x2x
program: |
  func.func @main(%x: tensor<2x3x4x!FHE.esint<6>>, %y: tensor<2x4x2x!FHE.esint<6>>) -> tensor<2x3x2x!FHE.esint<6>> {
       %0 = "FHELinalg.matmul_eint_eint"(%x, %y): (tensor<2x3x4x!FHE.esint<6>>, tensor<2x4x2x!FHE.esint<6>>) -> tensor<2x3x2x!FHE.esint<6>>
       return %0 : tensor<2x3x2x!FHE.esint<6>>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [-1, -1, -2, -2, -1, -2, -2, -1, -2, -1, -2, -1, -1, -2, -2, -2, -2, -1, -2, -1, -1, -2, -1, -1]
      shape: [2,3,4]
      signed: True
    - tensor: [-1, -1, -1, -1, -2, -2, -1, -1, -1, -1, -2, -2, -1, -2, -1, -2]
      shape: [2,4,2]
      signed: True
    outputs:
    - tensor: [8, 8, 8, 8, 8, 8, 9, 13, 7, 10, 7, 9]
      shape: [2,3,2]
      signed: True
---
description: matmul_eint_eint_6bits_u_3x4x_4x2x
program: |
  func.func @main(%x: tensor<3x4x!FHE.eint<6>>, %y: tensor<4x2x!FHE.eint<6>>) -> tensor<3x2x!FHE.eint<6>> {
       %0 = "FHELinalg.matmul_eint_eint"(%x, %y): (tensor<3x4x!FHE.eint<6>>, tensor<4x2x!FHE.eint<6>>) -> tensor<3x2x!FHE.eint<6>>
       return %0 : tensor<3x2x!FHE.eint<6>>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      shape: [3,4]
    - tensor: [0, 0, 0, 0, 0, 0, 0, 0]
      shape: [4,2]
    outputs:
    - tensor: [0, 0, 0, 0, 0, 0]
      shape: [3,2]
---
description: matmul_eint_eint_6bits_s_3x4x_4x2x
program: |
  func.func @main(%x: tensor<3x4x!FHE.esint<6>>, %y: tensor<4x2x!FHE.esint<6>>) -> tensor<3x2x!FHE.esint<6>> {
       %0 = "FHELinalg.matmul_eint_eint"(%x, %y): (tensor<3x4x!FHE.esint<6>>, tensor<4x2x!FHE.esint<6>>) -> tensor<3x2x!FHE.esint<6>>
       return %0 : tensor<3x2x!FHE.esint<6>>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [-2, -1, -1, -1, -1, -2, -1, -1, -1, -1, -2, -2]
      shape: [3,4]
      signed: True
    - tensor: [-2, -2, -1, -1, -1, -2, -2, -2]
      shape: [4,2]
      signed: True
    outputs:
    - tensor: [8, 9, 7, 8, 9, 11]
      shape: [3,2]
      signed: True
---
description: matmul_eint_eint_6bits_u_3x_4x3x2x
program: |
  func.func @main(%x: tensor<3x!FHE.eint<6>>, %y: tensor<4x3x2x!FHE.eint<6>>) -> tensor<4x2x!FHE.eint<6>> {
       %0 = "FHELinalg.matmul_eint_eint"(%x, %y): (tensor<3x!FHE.eint<6>>, tensor<4x3x2x!FHE.eint<6>>) -> tensor<4x2x!FHE.eint<6>>
       return %0 : tensor<4x2x!FHE.eint<6>>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [0, 0, 0]
      shape: [3]
    - tensor: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      shape: [4,3,2]
    outputs:
    - tensor: [0, 0, 0, 0, 0, 0, 0, 0]
      shape: [4,2]
---
description: matmul_eint_eint_6bits_s_3x_4x3x2x
program: |
  func.func @main(%x: tensor<3x!FHE.esint<6>>, %y: tensor<4x3x2x!FHE.esint<6>>) -> tensor<4x2x!FHE.esint<6>> {
       %0 = "FHELinalg.matmul_eint_eint"(%x, %y): (tensor<3x!FHE.esint<6>>, tensor<4x3x2x!FHE.esint<6>>) -> tensor<4x2x!FHE.esint<6>>
       return %0 : tensor<4x2x!FHE.esint<6>>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [-1, -2, -2]
      shape: [3]
      signed: True
    - tensor: [-2, -2, -1, -2, -1, -1, -2, -1, -2, -2, -1, -2, -2, -2, -2, -1, -1, -2, -1, -1, -1, -1, -2, -1]
      shape: [4,3,2]
      signed: True
    outputs:
    - tensor: [6, 8, 8, 9, 8, 8, 7, 5]
      shape: [4,2]
      signed: True
---
description: matmul_eint_eint_6bits_u_2x3x4x_4x
program: |
  func.func @main(%x: tensor<2x3x4x!FHE.eint<6>>, %y: tensor<4x!FHE.eint<6>>) -> tensor<2x3x!FHE.eint<6>> {
       %0 = "FHELinalg.matmul_eint_eint"(%x, %y): (tensor<2x3x4x!FHE.eint<6>>, tensor<4x!FHE.eint<6>>) -> tensor<2x3x!FHE.eint<6>>
       return %0 : tensor<2x3x!FHE.eint<6>>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      shape: [2,3,4]
    - tensor: [0, 0, 0, 0]
      shape: [4]
    outputs:
    - tensor: [0, 0, 0, 0, 0, 0]
      shape: [2,3]
---
description: matmul_eint_eint_6bits_s_2x3x4x_4x
program: |
  func.func @main(%x: tensor<2x3x4x!FHE.esint<6>>, %y: tensor<4x!FHE.esint<6>>) -> tensor<2x3x!FHE.esint<6>> {
       %0 = "FHELinalg.matmul_eint_eint"(%x, %y): (tensor<2x3x4x!FHE.esint<6>>, tensor<4x!FHE.esint<6>>) -> tensor<2x3x!FHE.esint<6>>
       return %0 : tensor<2x3x!FHE.esint<6>>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [-2, -1, -1, -2, -2, -1, -1, -2, -1, -2, -2, -2, -1, -2, -2, -2, -2, -1, -1, -2, -2, -2, -1, -1]
      shape: [2,3,4]
      signed: True
    - tensor: [-2, -2, -2, -2]
      shape: [4]
      signed: True
    outputs:
    - tensor: [12, 12, 14, 14, 12, 12]
      shape: [2,3]
      signed: True
---
description: matmul_eint_eint_6bits_u_2x1x3x4x_5x4x2x
program: |
  func.func @main(%x: tensor<2x1x3x4x!FHE.eint<6>>, %y: tensor<5x4x2x!FHE.eint<6>>) -> tensor<2x5x3x2x!FHE.eint<6>> {
       %0 = "FHELinalg.matmul_eint_eint"(%x, %y): (tensor<2x1x3x4x!FHE.eint<6>>, tensor<5x4x2x!FHE.eint<6>>) -> tensor<2x5x3x2x!FHE.eint<6>>
       return %0 : tensor<2x5x3x2x!FHE.eint<6>>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      shape: [2,1,3,4]
    - tensor: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      shape: [5,4,2]
    outputs:
    - tensor: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
      shape: [2,5,3,2]
---
description: matmul_eint_eint_6bits_s_2x1x3x4x_5x4x2x
program: |
  func.func @main(%x: tensor<2x1x3x4x!FHE.esint<6>>, %y: tensor<5x4x2x!FHE.esint<6>>) -> tensor<2x5x3x2x!FHE.esint<6>> {
       %0 = "FHELinalg.matmul_eint_eint"(%x, %y): (tensor<2x1x3x4x!FHE.esint<6>>, tensor<5x4x2x!FHE.esint<6>>) -> tensor<2x5x3x2x!FHE.esint<6>>
       return %0 : tensor<2x5x3x2x!FHE.esint<6>>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [-2, -2, -2, -1, -1, -1, -2, -1, -1, -2, -2, -2, -1, -1, -2, -2, -2, -1, -1, -1, -1, -2, -1, -2]
      shape: [2,1,3,4]
      signed: True
    - tensor: [-2, -1, -2, -1, -2, -2, -1, -2, -1, -2, -2, -2, -2, -2, -1, -2, -1, -1, -1, -2, -2, -1, -2, -2, -2, -2, -2, -1, -2, -1, -1, -2, -1, -2, -1, -1, -1, -1, -2, -1]
      shape: [5,4,2]
      signed: True
    outputs:
    - tensor: [13, 10, 9, 8, 12, 11, 11, 14, 8, 10, 11, 14, 10, 10, 8, 7, 11, 11, 13, 10, 9, 7, 12, 10, 8, 9, 6, 6, 9, 8, 10, 10, 9, 7, 10, 9, 9, 12, 7, 10, 9, 12, 10, 9, 7, 7, 9, 10, 10, 9, 9, 8, 10, 9, 8, 7, 6, 7, 8, 7]
      shape: [2,5,3,2]
      signed: True
---
# /!\ DO NOT EDIT MANUALLY THIS FILE MANUALLY
# /!\ THIS FILE HAS BEEN GENERATED
description: dot_eint_eint_6bits_u_3x_3x
program: |
  func.func @main(%x: tensor<3x!FHE.eint<6>>, %y: tensor<3x!FHE.eint<6>>) -> !FHE.eint<6> {
       %0 = "FHELinalg.dot_eint_eint"(%x, %y): (tensor<3x!FHE.eint<6>>, tensor<3x!FHE.eint<6>>) -> !FHE.eint<6>
       return %0 : !FHE.eint<6>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [0, 0, 0]
      shape: [3]
    - tensor: [0, 0, 0]
      shape: [3]
    outputs:
    - scalar: 0
---
description: dot_eint_eint_6bits_s_3x_3x
program: |
  func.func @main(%x: tensor<3x!FHE.esint<6>>, %y: tensor<3x!FHE.esint<6>>) -> !FHE.esint<6> {
       %0 = "FHELinalg.dot_eint_eint"(%x, %y): (tensor<3x!FHE.esint<6>>, tensor<3x!FHE.esint<6>>) -> !FHE.esint<6>
       return %0 : !FHE.esint<6>
  }
p-error: 1e-06
tests:
  - inputs: 
    - tensor: [-2, -2, -1]
      shape: [3]
      signed: True
    - tensor: [-2, -1, -1]
      shape: [3]
      signed: True
    outputs:
    - scalar: 7
      signed: True
---
