diff --git a/lisa/lisa-analyses/src/main/java/it/unive/lisa/analysis/nonRedundantSet/NonRedundantPowerset.java b/lisa/lisa-analyses/src/main/java/it/unive/lisa/analysis/nonRedundantSet/NonRedundantPowerset.java
index c348c5d99..0d0305ca1 100644
--- a/lisa/lisa-analyses/src/main/java/it/unive/lisa/analysis/nonRedundantSet/NonRedundantPowerset.java
+++ b/lisa/lisa-analyses/src/main/java/it/unive/lisa/analysis/nonRedundantSet/NonRedundantPowerset.java
@@ -209,9 +209,8 @@ protected C extrapolationHeuristic(C other) throws SemanticException {
* Given two subset S1 and S2 of the domain of a
* lattice widening(S1, S2) =
* h∇(S1, T2), where
- * h∇ is a
- * {@link #extrapolationHeuristic(NonRedundantPowerset) widenining-connected
- * extrapolation heuristic} and T2 is equal to:
+ * h∇ is a widenining-connected extrapolation heuristic and
+ * T2 is equal to:
*
* - S2 if
* S1 ≤EM S2
@@ -219,8 +218,7 @@ protected C extrapolationHeuristic(C other) throws SemanticException {
*
* where ≤EM is the
* {@link #lessOrEqualEgliMilner(NonRedundantPowerset) Egli-Milner relation}
- * and +EM is an
- * {@link #EgliMilnerConnector(NonRedundantPowerset) Egli-Milner connector}.
+ * and +EM is an Egli-Milner connector.
*/
@Override
public C wideningAux(C other) throws SemanticException {
diff --git a/lisa/lisa-analyses/src/main/java/it/unive/lisa/analysis/nonRedundantSet/NonRedundantPowersetOfBaseNonRelationalValueDomain.java b/lisa/lisa-analyses/src/main/java/it/unive/lisa/analysis/nonRedundantSet/NonRedundantPowersetOfBaseNonRelationalValueDomain.java
index 39373f7bf..5caa82109 100644
--- a/lisa/lisa-analyses/src/main/java/it/unive/lisa/analysis/nonRedundantSet/NonRedundantPowersetOfBaseNonRelationalValueDomain.java
+++ b/lisa/lisa-analyses/src/main/java/it/unive/lisa/analysis/nonRedundantSet/NonRedundantPowersetOfBaseNonRelationalValueDomain.java
@@ -297,10 +297,8 @@ protected C extrapolationHeuristic(C other) throws SemanticException {
* Given two subset S1 and S2 of the domain of a
* lattice widening(S1, S2) =
* h∇(S1, T2), where
- * h∇ is a
- * {@link #extrapolationHeuristic(NonRedundantPowersetOfBaseNonRelationalValueDomain)
- * widenining-connected extrapolation heuristic} and T2 is equal
- * to:
+ * h∇ is a widenining-connected extrapolation heuristic and
+ * T2 is equal to:
*
* - S2 if
* S1 ≤EM S2
@@ -308,9 +306,7 @@ protected C extrapolationHeuristic(C other) throws SemanticException {
*
* where ≤EM is the
* {@link #lessOrEqualEgliMilner(NonRedundantPowersetOfBaseNonRelationalValueDomain)
- * Egli-Milner relation} and +EM is an
- * {@link #EgliMilnerConnector(NonRedundantPowersetOfBaseNonRelationalValueDomain)
- * Egli-Milner connector}.
+ * Egli-Milner relation} and +EM is an Egli-Milner connector.
*/
@Override
public C wideningAux(C other) throws SemanticException {
diff --git a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Concat.java b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Concat.java
index 24c1fba02..5f17daace 100644
--- a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Concat.java
+++ b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Concat.java
@@ -25,13 +25,12 @@
* {@link StringType}.
*
* Since in most languages string operations are provided through calls to
- * library functions, this class contains a field {@link #originating} whose
- * purpose is to optionally store a {@link Statement} that is rewritten to an
- * instance of this class (i.e., a call to a {@link NativeCFG} modeling the
- * library function). If present, such statement will be used as
- * {@link ProgramPoint} for semantics computations. This allows subclasses to
- * implement {@link PluggableStatement} easily without redefining the semantics
- * provided by this class.
+ * library functions, this class contains a field whose purpose is to optionally
+ * store a {@link Statement} that is rewritten to an instance of this class
+ * (i.e., a call to a {@link NativeCFG} modeling the library function). If
+ * present, such statement will be used as {@link ProgramPoint} for semantics
+ * computations. This allows subclasses to implement {@link PluggableStatement}
+ * easily without redefining the semantics provided by this class.
*
* @author Luca Negrini
*/
diff --git a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Contains.java b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Contains.java
index 185426693..a52b800f8 100644
--- a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Contains.java
+++ b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Contains.java
@@ -26,13 +26,12 @@
* {@link BooleanType}.
*
* Since in most languages string operations are provided through calls to
- * library functions, this class contains a field {@link #originating} whose
- * purpose is to optionally store a {@link Statement} that is rewritten to an
- * instance of this class (i.e., a call to a {@link NativeCFG} modeling the
- * library function). If present, such statement will be used as
- * {@link ProgramPoint} for semantics computations. This allows subclasses to
- * implement {@link PluggableStatement} easily without redefining the semantics
- * provided by this class.
+ * library functions, this class contains a field whose purpose is to optionally
+ * store a {@link Statement} that is rewritten to an instance of this class
+ * (i.e., a call to a {@link NativeCFG} modeling the library function). If
+ * present, such statement will be used as {@link ProgramPoint} for semantics
+ * computations. This allows subclasses to implement {@link PluggableStatement}
+ * easily without redefining the semantics provided by this class.
*
* @author Luca Negrini
*/
diff --git a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/EndsWith.java b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/EndsWith.java
index 788f0f8a2..96cc1d624 100644
--- a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/EndsWith.java
+++ b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/EndsWith.java
@@ -26,13 +26,12 @@
* {@link BooleanType}.
*
* Since in most languages string operations are provided through calls to
- * library functions, this class contains a field {@link #originating} whose
- * purpose is to optionally store a {@link Statement} that is rewritten to an
- * instance of this class (i.e., a call to a {@link NativeCFG} modeling the
- * library function). If present, such statement will be used as
- * {@link ProgramPoint} for semantics computations. This allows subclasses to
- * implement {@link PluggableStatement} easily without redefining the semantics
- * provided by this class.
+ * library functions, this class contains a field whose purpose is to optionally
+ * store a {@link Statement} that is rewritten to an instance of this class
+ * (i.e., a call to a {@link NativeCFG} modeling the library function). If
+ * present, such statement will be used as {@link ProgramPoint} for semantics
+ * computations. This allows subclasses to implement {@link PluggableStatement}
+ * easily without redefining the semantics provided by this class.
*
* @author Luca Negrini
*/
diff --git a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Equals.java b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Equals.java
index b0f85cfce..da92f5e93 100644
--- a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Equals.java
+++ b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Equals.java
@@ -26,13 +26,12 @@
* {@link BooleanType}.
*
* Since in most languages string operations are provided through calls to
- * library functions, this class contains a field {@link #originating} whose
- * purpose is to optionally store a {@link Statement} that is rewritten to an
- * instance of this class (i.e., a call to a {@link NativeCFG} modeling the
- * library function). If present, such statement will be used as
- * {@link ProgramPoint} for semantics computations. This allows subclasses to
- * implement {@link PluggableStatement} easily without redefining the semantics
- * provided by this class.
+ * library functions, this class contains a field whose purpose is to optionally
+ * store a {@link Statement} that is rewritten to an instance of this class
+ * (i.e., a call to a {@link NativeCFG} modeling the library function). If
+ * present, such statement will be used as {@link ProgramPoint} for semantics
+ * computations. This allows subclasses to implement {@link PluggableStatement}
+ * easily without redefining the semantics provided by this class.
*
* @author Luca Negrini
*/
diff --git a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/IndexOf.java b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/IndexOf.java
index 6f39c9333..ed7f13525 100644
--- a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/IndexOf.java
+++ b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/IndexOf.java
@@ -26,13 +26,12 @@
* {@link NumericType}.
*
* Since in most languages string operations are provided through calls to
- * library functions, this class contains a field {@link #originating} whose
- * purpose is to optionally store a {@link Statement} that is rewritten to an
- * instance of this class (i.e., a call to a {@link NativeCFG} modeling the
- * library function). If present, such statement will be used as
- * {@link ProgramPoint} for semantics computations. This allows subclasses to
- * implement {@link PluggableStatement} easily without redefining the semantics
- * provided by this class.
+ * library functions, this class contains a field whose purpose is to optionally
+ * store a {@link Statement} that is rewritten to an instance of this class
+ * (i.e., a call to a {@link NativeCFG} modeling the library function). If
+ * present, such statement will be used as {@link ProgramPoint} for semantics
+ * computations. This allows subclasses to implement {@link PluggableStatement}
+ * easily without redefining the semantics provided by this class.
*
* @author Luca Negrini
*/
diff --git a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Length.java b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Length.java
index eec870ed1..44f74edc1 100644
--- a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Length.java
+++ b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Length.java
@@ -26,13 +26,12 @@
* {@link NumericType}.
*
* Since in most languages string operations are provided through calls to
- * library functions, this class contains a field {@link #originating} whose
- * purpose is to optionally store a {@link Statement} that is rewritten to an
- * instance of this class (i.e., a call to a {@link NativeCFG} modeling the
- * library function). If present, such statement will be used as
- * {@link ProgramPoint} for semantics computations. This allows subclasses to
- * implement {@link PluggableStatement} easily without redefining the semantics
- * provided by this class.
+ * library functions, this class contains a field whose purpose is to optionally
+ * store a {@link Statement} that is rewritten to an instance of this class
+ * (i.e., a call to a {@link NativeCFG} modeling the library function). If
+ * present, such statement will be used as {@link ProgramPoint} for semantics
+ * computations. This allows subclasses to implement {@link PluggableStatement}
+ * easily without redefining the semantics provided by this class.
*
* @author Luca Negrini
*/
diff --git a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Replace.java b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Replace.java
index 764f97b52..862a0e51d 100644
--- a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Replace.java
+++ b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Replace.java
@@ -25,13 +25,12 @@
* {@link StringType}.
*
* Since in most languages string operations are provided through calls to
- * library functions, this class contains a field {@link #originating} whose
- * purpose is to optionally store a {@link Statement} that is rewritten to an
- * instance of this class (i.e., a call to a {@link NativeCFG} modeling the
- * library function). If present, such statement will be used as
- * {@link ProgramPoint} for semantics computations. This allows subclasses to
- * implement {@link PluggableStatement} easily without redefining the semantics
- * provided by this class.
+ * library functions, this class contains a field whose purpose is to optionally
+ * store a {@link Statement} that is rewritten to an instance of this class
+ * (i.e., a call to a {@link NativeCFG} modeling the library function). If
+ * present, such statement will be used as {@link ProgramPoint} for semantics
+ * computations. This allows subclasses to implement {@link PluggableStatement}
+ * easily without redefining the semantics provided by this class.
*
* @author Luca Negrini
*/
diff --git a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/StartsWith.java b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/StartsWith.java
index 3b9f1ad55..4b1ab968a 100644
--- a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/StartsWith.java
+++ b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/StartsWith.java
@@ -26,13 +26,12 @@
* {@link BooleanType}.
*
* Since in most languages string operations are provided through calls to
- * library functions, this class contains a field {@link #originating} whose
- * purpose is to optionally store a {@link Statement} that is rewritten to an
- * instance of this class (i.e., a call to a {@link NativeCFG} modeling the
- * library function). If present, such statement will be used as
- * {@link ProgramPoint} for semantics computations. This allows subclasses to
- * implement {@link PluggableStatement} easily without redefining the semantics
- * provided by this class.
+ * library functions, this class contains a field whose purpose is to optionally
+ * store a {@link Statement} that is rewritten to an instance of this class
+ * (i.e., a call to a {@link NativeCFG} modeling the library function). If
+ * present, such statement will be used as {@link ProgramPoint} for semantics
+ * computations. This allows subclasses to implement {@link PluggableStatement}
+ * easily without redefining the semantics provided by this class.
*
* @author Luca Negrini
*/
diff --git a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Substring.java b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Substring.java
index c1cfbb92c..96533c3b3 100644
--- a/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Substring.java
+++ b/lisa/lisa-program/src/main/java/it/unive/lisa/program/cfg/statement/string/Substring.java
@@ -27,13 +27,12 @@
* {@link StringType}.
*
* Since in most languages string operations are provided through calls to
- * library functions, this class contains a field {@link #originating} whose
- * purpose is to optionally store a {@link Statement} that is rewritten to an
- * instance of this class (i.e., a call to a {@link NativeCFG} modeling the
- * library function). If present, such statement will be used as
- * {@link ProgramPoint} for semantics computations. This allows subclasses to
- * implement {@link PluggableStatement} easily without redefining the semantics
- * provided by this class.
+ * library functions, this class contains a field whose purpose is to optionally
+ * store a {@link Statement} that is rewritten to an instance of this class
+ * (i.e., a call to a {@link NativeCFG} modeling the library function). If
+ * present, such statement will be used as {@link ProgramPoint} for semantics
+ * computations. This allows subclasses to implement {@link PluggableStatement}
+ * easily without redefining the semantics provided by this class.
*
* @author Luca Negrini
*/
diff --git a/lisa/lisa-sdk/src/main/java/it/unive/lisa/program/cfg/fixpoints/OptimizedFixpoint.java b/lisa/lisa-sdk/src/main/java/it/unive/lisa/program/cfg/fixpoints/OptimizedFixpoint.java
index d857ebeaa..eba387b2e 100644
--- a/lisa/lisa-sdk/src/main/java/it/unive/lisa/program/cfg/fixpoints/OptimizedFixpoint.java
+++ b/lisa/lisa-sdk/src/main/java/it/unive/lisa/program/cfg/fixpoints/OptimizedFixpoint.java
@@ -23,10 +23,11 @@
/**
* A fixpoint algorithm for a {@link Graph}, parametric to the
- * {@link FixpointImplementation} that one wants to use to compute the results.
- * This fixpoint algorithms is optimized: it works exploiting the basic blocks
- * of the target graph, and only yields approximations of widening points,
- * stopping statements and user-defined hotspots.
+ * {@link it.unive.lisa.util.datastructures.graph.algorithms.Fixpoint.FixpointImplementation}
+ * that one wants to use to compute the results. This fixpoint algorithms is
+ * optimized: it works exploiting the basic blocks of the target graph, and only
+ * yields approximations of widening points, stopping statements and
+ * user-defined hotspots.
*
* @author Luca Negrini
*
diff --git a/lisa/lisa-sdk/src/main/java/it/unive/lisa/symbolic/value/operator/binary/StringOperation.java b/lisa/lisa-sdk/src/main/java/it/unive/lisa/symbolic/value/operator/binary/StringOperation.java
index aa61cd485..ade844aec 100644
--- a/lisa/lisa-sdk/src/main/java/it/unive/lisa/symbolic/value/operator/binary/StringOperation.java
+++ b/lisa/lisa-sdk/src/main/java/it/unive/lisa/symbolic/value/operator/binary/StringOperation.java
@@ -1,18 +1,19 @@
package it.unive.lisa.symbolic.value.operator.binary;
+import java.util.Collections;
+import java.util.Set;
+
import it.unive.lisa.symbolic.value.operator.StringOperator;
import it.unive.lisa.type.StringType;
import it.unive.lisa.type.Type;
import it.unive.lisa.type.TypeSystem;
-import java.util.Collections;
-import java.util.Set;
/**
* A common implementation for classes implementing {@link BinaryOperator} and
* {@link StringOperator}, providing a
* {@link #typeInference(TypeSystem, Set, Set)} implementation that returns an
* empty set if no {@link StringType} can be found in one of the arguments, and
- * a singleton set containing {@link #resultType(TypeSystem)} otherwise.
+ * a singleton set containing their result type otherwise.
*
* @author Luca Negrini
*/