From 8dbdc0ddcbf8a36ae898dfd60050ff62c9c4be25 Mon Sep 17 00:00:00 2001 From: Jeremy Bradley-Silverio Donato Date: Thu, 6 Jan 2022 17:35:32 +0100 Subject: [PATCH] docs: Update float-fusing.md --- docs/dev/explanation/float-fusing.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/dev/explanation/float-fusing.md b/docs/dev/explanation/float-fusing.md index 31ae5cce8..63982d3ca 100644 --- a/docs/dev/explanation/float-fusing.md +++ b/docs/dev/explanation/float-fusing.md @@ -37,7 +37,7 @@ The simplified graph of operations with the float subgraph condensed in a `Gener ## How is it done in **Concrete Numpy**? -The first step consists in detecting where we go from floating point computation back to integers. This allows to identify the potential terminal node of the float subgraph we are going to fuse. +The first step consists in detecting where we go from floating point computation back to integers. This allows the identification of the potential terminal node of the float subgraph we are going to fuse. From the terminal node, we go back up through the nodes until we find nodes that go from integers to floats. If we find a single node then we have a fusable subgraph that we replace by an equivalent GenericFunction node and stop the search for fusable subgraphs for the terminal node being considered. If we find more than one such node we try to find a single common ancestor that would go from integers to floats. We repeat the process as long as there are potential ancestors nodes, stopping if we find a suitable float subgraph with a single integer input and a single integer output.