In the sea snail experiment, the inputs and outputs are realized by hardware that the snails are born with. The inputs are the photoreceptive cells that detect light and the hairs that detect the motion of the water. The outputs are motor neurons that activate the snailβs muscles and make it move. The input hardware I will call sensors and the output hardware actuators. The change in behavior of the snail is realized by changes in the neural circuit that connects the input hardware to the output hardware. The mechanism that makes the changes in the neural circuit I call the learning algorithm. This learning algorithm is an information processing mechanism that can change the behavioral relationship between the inputs and outputs. Its physical realization is immaterial here. In the terminology of machine learning, the inputs, which here would be the photoreceptors and motion sensors, would be the features, and the output, the motion producing muscles, would be the target. In both the sea snail and a computer, there is a computational mechanism that computes the target value from the feature values. The mechanism would be a network of neurons in the snail and a computer program in the computer. The learning algorithm would change the network of neurons or computer program, so that in the future the same input values of the features would cause an action at the target different from before.