coming from a lifetime of "if then else" computer programming and Boolean hardware logic it is difficult to understand how this works.
Yeah, you need to throw out everything you know about algorithmic style programming.
While neural networks are deterministic, they are not programmed with an algorithm. Rather, they are "trained" to respond to given set of inputs.
As a simple primer, take an example of a network that recognizes handwritten letters A through Z. The network consists of an input later (for example, representing a 20x20 pixel array), and output later (for example, representing the letters A through Z), zero, one, or more hidden layers, and connections between each node in each layer and each node in the next layer. It might look something like this:
(courtesy https://www.spiceworks.com/tech/artificial-intelligence/articles/what-is-a-neural-network/)
Each node (the circles in the diagram) will have a numerical representation of its "value", and each connection between the node (the lines) will have a weight assigned to it (for purposes of this discussion, let's assume the weights are a real number between 0 and 1, but that choice is somewhat arbitrary, you can use whatever number system makes sense in each particular implementation).
When one of the pixels on the input layer is "lit", that node has a value of "1", and if not "lit", it's "0".
For each subsequent layer, the input value of each node is calculated as the sum of the value of the node that feeds it times the weight of the connecting line. Some of the weights might be close to zero (minimize the impact of the preceding nodes) and some might be close to one (favoring those preceding nodes). If the value of the node is calculated to be above a certain threshold, it is considered a "1", otherwise it's a "0" for purposes of calculating the next layer.
Once you reach the output layer, the goal is to have one (and only one) of the nodes above the threshold, and all the others below the threshold, so you wind up with just one answer, although in the output layer, you could retain the calculated values of the nodes to express a mathematical confidence level in the result (i.e. if the calculated value of the "correct" node could be 0.935 and the others 0.021, 0.019, 0.024, ....)
The idea is that the input data need not be perfect (if it was, you could fall back on your boolean logic to directly connect the input pixels to each output letter with the right combination and AND gates and INVERTERS).
So the "training" process is one of assigning the weights to each "edge" (the technical term for the connections between nodes). This is done by feeding the network a (large) set of training data, examining the results, and then adjusting the weights using an algorithm that increases the weights that feed the correct expected answer, and decreasing the weights that feed the nodes that are "incorrect". While not necessarily complex, the training process does take a huge number of training sets to finally arrive at a set of weights that always produce the right answer for every example in the training set. And this example is a relatively simple one. It can take MANY iterations of this training before the training process is complete. You can imagine the complexity of processing 6 or more feeds of HD video, which is why the problem is broken down into different tasks, but even so real-world scenarios are quite extensive in number as well!
This is also why Tesla chose to implement their NN in hardware, versus running the NN in a GPU (which is well suited for the task, but still is a simulation of a network running in a processor). This has significant power and speed implications (and cost, since they don't have to buy processors for a third-party).
Obviously once you have your trained network, it's not really possible (easy) to pick out why the network arrived at a specific output given the inputs. It's all basically encoded in the weights as opposed to an algorithm. However, there has been done work on being able to have NNs "explain" how they arrived at a particular answer.