diff --git a/src/main/java/ch/hepia/numeric/Transposed.java b/src/main/java/ch/hepia/numeric/Transposed.java
index 1a0f577103ea9f4fe4dc08b7ef7baf981dc7f7fd..c5c6c2ad729e662cee8dc1d4e9f30f5cbfbf5cae 100644
--- a/src/main/java/ch/hepia/numeric/Transposed.java
+++ b/src/main/java/ch/hepia/numeric/Transposed.java
@@ -32,4 +32,22 @@ public class Transposed{
       return "Transposed"+String.valueOf(strings);
     }
 
+    @Override
+    public boolean equals(Object obj) {
+      if(obj instanceof Transposed)
+      {
+        for(int i=0;i<this.t().len();i++)
+        {
+          if(((Transposed)obj).t().get(i)!=this.t().get(i))
+          {
+            return false;
+          }
+        }
+        return true;
+      }
+      else
+      {
+        return false;
+      }
+    }
 }
diff --git a/src/main/java/ch/hepia/numeric/Vector.java b/src/main/java/ch/hepia/numeric/Vector.java
index 0ac7b7a1eaa8f546f68e90d44ee5efc2a702ebfd..b8bd8feded320f2a7044c775c7c712cb7889f9dc 100644
--- a/src/main/java/ch/hepia/numeric/Vector.java
+++ b/src/main/java/ch/hepia/numeric/Vector.java
@@ -117,7 +117,6 @@ final public class Vector {
     }
 
     public static Vector empty() {
-      // Vector v = new Vector();
       return new Vector();
     }
 
@@ -131,16 +130,11 @@ final public class Vector {
     }
 
     public static Vector zeros(int nb) {
-        Vector v = new Vector();
-        for(int i=0;i<nb;i++)
-        {
-          v.lstVector.add(0.0);
-        }
-        return v;
+        return Vector.fill(nb,0.0);
     }
 
     public static Vector ones(int nb) {
-        throw new UnsupportedOperationException("This feature isn't implemented yet");
+      return Vector.fill(nb,1.0);
     }
 
     public static Vector linespace(double from, double to, int nb) {
@@ -185,7 +179,7 @@ final public class Vector {
     public boolean equals(Object obj) {
       if(obj instanceof Vector)
       {
-        for(int i=0;i<this.lstVector.size();i++)
+        for(int i=0;i<this.len();i++)
         {
           if(((Vector)obj).get(i)!=this.get(i))
           {
@@ -196,9 +190,7 @@ final public class Vector {
       }
       else
       {
-        //a ecrire
         return false;
       }
-        //throw new UnsupportedOperationException("boolean This feature isn't implemented yet");
     }
 }
diff --git a/src/test/java/ch/hepia/numeric/AppTest.java b/src/test/java/ch/hepia/numeric/AppTest.java
index 662fdd180ff97bd82937f8aa36688844f425e886..d8240f9a9b360326ddc7357dcd6c9cb939d46b38 100644
--- a/src/test/java/ch/hepia/numeric/AppTest.java
+++ b/src/test/java/ch/hepia/numeric/AppTest.java
@@ -17,25 +17,21 @@ class VectorTest {
         Vector v3 = Vector.of(-1.0, -2.0, -3.0);
         Vector v4 = Vector.of(-50.0, -2.0, -3.0);
         assertEquals(v1.add(v2), Vector.of(0.0, 0.0, 0.0));
-        assertEquals(v1.add(v2).toString(), Vector.of(0.0, 0.0, 0.0).toString());
-        assertEquals(v1.sub(v2).toString(), Vector.of(2.0, 4.0, 6.0).toString());
+        assertEquals(v1.sub(v2), Vector.of(2.0, 4.0, 6.0));
         assertEquals(v4.sub(v3), Vector.of(-49.0, 0.0, 0.0));
-        assertEquals(v1.mul(3.0).toString(), Vector.of(3.0, 6.0, 9.0).toString());
-        assertEquals(v1.mul(-0.0).toString(), Vector.of(-0.0, -0.0, -0.0).toString());
-        assertEquals(v1.mul(0.0).toString(), Vector.of(0.0, 0.0, 0.0).toString());
+        assertEquals(v1.mul(3.0), Vector.of(3.0, 6.0, 9.0));
+        assertEquals(v1.mul(-0.0), Vector.of(-0.0, -0.0, -0.0));
+        assertEquals(v1.mul(0.0), Vector.of(0.0, 0.0, 0.0));
         assertEquals(Vector.empty().len(), 0);
         assertEquals(Vector.of(1.0, 2.0, 1.0).len(), 3);
     }
 
     @Test
     void vectorCreation() {
-      assertEquals(Vector.zeros(3).toString(), Vector.of(0.0, 0.0, 0.0).toString());
-      assertEquals(Vector.zeros(10000).len(), 10000);
-        //assertEquals(Vector.zeros(3), Vector.of(0.0, 0.0, 0.0));
-        //assertEquals(Vector.ones(3), Vector.of(1.0, 1.0, 1.0));
+        assertEquals(Vector.zeros(3), Vector.of(0.0, 0.0, 0.0));
+        assertEquals(Vector.ones(3), Vector.of(1.0, 1.0, 1.0));
         //assertEquals(Vector.of(1.0, 2.0).map( d -> d * 2.0), Vector.of(2.0, 4.0));
-        assertEquals(Vector.fill(3, 1.7).toString(), Vector.of(1.7, 1.7, 1.7).toString());
-        //assertEquals(Vector.fill(3, 1.7), Vector.of(1.7, 1.7, 1.7));
+        assertEquals(Vector.fill(3, 1.7), Vector.of(1.7, 1.7, 1.7));
         //assertEquals(Vector.tabulate(4, i -> i*5.0), Vector.of(0.0, 5.0, 10.0, 15.0));
     }
 /*
@@ -54,7 +50,7 @@ class VectorTest {
                 Vector.norms(List.of(Vector.of(1.0, 2.0, 1.0), Vector.of(0.0, 0.0, 1.0)))
         );
         //assertEquals(Vector.sum(List.of(Vector.of(1.0, 2.0, 1.0), Vector.of(0.0, 0.0, 1.0))), Vector.of(1.0, 2.0, 2.0));
-        assertEquals(Vector.sum(List.of(Vector.of(1.0, 2.0, 1.0), Vector.of(0.0, 0.0, 1.0))).toString(), Vector.of(1.0, 2.0, 2.0).toString());
+        assertEquals(Vector.sum(List.of(Vector.of(1.0, 2.0, 1.0), Vector.of(0.0, 0.0, 1.0))), Vector.of(1.0, 2.0, 2.0));
     }
 
     @Test
@@ -69,8 +65,7 @@ class VectorTest {
         Vector v3 = Vector.of(1.0, 2.0, 3.0);
         Vector v4 = Vector.of(1.0, 2.0, 3.0);
         //assertEquals( v3.t().dot(v4), 14.0 );
-        assertEquals( v3.t().sub(v4.t()).toString(), Vector.of(0.0, 0.0, 0.0).t().toString() );
-        //assertEquals( v3.t().sub(v4.t()), Vector.of(0.0, 0.0, 0.0).t());
+        assertEquals( v3.t().sub(v4.t()), Vector.of(0.0, 0.0, 0.0).t());
     }
 
     @Test