diff --git a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/numeric/Addition.java b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/numeric/Addition.java
index 0d4b9197d..3f2a2a7db 100644
--- a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/numeric/Addition.java
+++ b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/numeric/Addition.java
@@ -55,7 +55,7 @@ public > AnalysisState fwdBinarySemantics(
SymbolicExpression right,
StatementStore expressions)
throws SemanticException {
- if (state.getState().getRuntimeTypesOf(right, this, state.getState()).stream().noneMatch(Type::isNumericType))
+ if (state.getState().getRuntimeTypesOf(left, this, state.getState()).stream().noneMatch(Type::isNumericType))
return state.bottom();
if (state.getState().getRuntimeTypesOf(right, this, state.getState()).stream().noneMatch(Type::isNumericType))
return state.bottom();
diff --git a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/numeric/Remainder.java b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/numeric/Remainder.java
index 5f8a4fbef..41dfbca2d 100644
--- a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/numeric/Remainder.java
+++ b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/numeric/Remainder.java
@@ -58,7 +58,7 @@ public > AnalysisState fwdBinarySemantics(
throws SemanticException {
if (state.getState().getRuntimeTypesOf(left, this, state.getState()).stream().noneMatch(Type::isNumericType))
return state.bottom();
- if (state.getState().getRuntimeTypesOf(left, this, state.getState()).stream().noneMatch(Type::isNumericType))
+ if (state.getState().getRuntimeTypesOf(right, this, state.getState()).stream().noneMatch(Type::isNumericType))
return state.bottom();
return state.smallStepSemantics(