diff --git a/hpvm/docs/hpvm-specification.md b/hpvm/docs/hpvm-specification.md
index 04643501e9699ddc227e4ed8f7adfb50bfd3dea9..f5740b83e96dac8078a3fc885e77a852a004ef63 100644
--- a/hpvm/docs/hpvm-specification.md
+++ b/hpvm/docs/hpvm-specification.md
@@ -71,16 +71,16 @@ The intrinsics for describing graphs can only be used by internal nodes. Also, i
 
 
 ```i8* llvm.hpvm.createNode(i8* F)```  
-Create a static dataflow node with one dynamic instances executing node function ```F```. Return a handle to the created node.
+Create a static dataflow node with one dynamic instance executing node function ```F```. Return a handle to the created node.
 
 ```i8* llvm.hpvm.createNode1D(i8* F, i64 n1)```  
-Create a static dataflow node with ```n1``` dynamic instances executing node function ```F```. Return a handle to the created node.
+Create a static dataflow node replicated in one dimension, namely ```x```, with ```n1``` dynamic instances executing node function ```F```. Return a handle to the created node.
 
 ```i8* llvm.hpvm.createNode2D(i8* F, i64 n1, i64 n2)```  
-Create a static dataflow node replicated in two dimensions, with ```n1``` and ```n2``` dynamic instances in each dimension respectively, executing node function ```F```. Return a handle to the created node.
+Create a static dataflow node replicated in two dimensions, namely ```x``` and ```y```, with ```n1``` and ```n2``` dynamic instances in each dimension respectively, executing node function ```F```. Return a handle to the created node.
 
 ```i8* llvm.hpvm.createNode3D(i8* F, i64 n1, i64 n2, i64 n3)```  
-Create a static dataflow node replicated in three dimensions, with ```n1```, ```n2``` and ```n3``` dynamic instances in each dimension respectively, executing node function ```F```. Return a handle to the created node.
+Create a static dataflow node replicated in three dimensions, namely ```x```, ```y``` and ```z```, with ```n1```, ```n2``` and ```n3``` dynamic instances in each dimension respectively, executing node function ```F```. Return a handle to the created node.
 
 ```i8* llvm.hpvm.createEdge(i8* Src, i8* Dst, i1 ReplType, i32 sp, i32 dp, i1 isStream)```  
 Create edge from output ```sp``` of node ```Src``` to input ```dp``` of node ```Dst```. ```ReplType``` chooses between a 1-1 or all-to-all edge. ```isStream``` chooses a streaming (1) or non streaming (0) edge. Return a handle to the created edge.