Sure, other living, non-human things clearly reason and think. My German shepherd dog is quite smart and demonstrates these processes all the time. But is a machine following an algorithm (even a stochastic algorithm) “thinking” or “reasoning?” I think not. The algorithm has gotten so difficult for us to explain that we struggle with it, but in the end it’s all just matrix math and some randomization. From a given numeric seed, it’s all quite mechanical.
> is a machine following an algorithm (even a stochastic algorithm) “thinking” or “reasoning”?
If the process is sound, yes, it can be said to be thinking or reasoning - it produced "sound thought or reasoning".
The "reasoning" is there and elsewhere the absolute (from the producing entity) output which is valid as a representation of proper reasoning.
If "A is B and B is C, then A is C" is reasoning, than what produces it in a way "reasons". If not, then a proper definition of "reasoning" must be provided, for it to be discussed.
Yes, a proper definition of reasoning must be provided. How are you defining reasoning, exactly? You imply that formal logic is reasoning. Is reasoning just formal logic or is formal logic just a subset of reasoning? If a subset, what’s the rest of it? Since they implement logic, do Prolog programs “reason” or are they just performing inference according to the SLD resolution algorithm?
It will be related to the context. If a process tells me that "if the light is blue and the sound is sharp then the lever must be lowered", it outputs reasoning; if what the activity did was running on conditional paths like an Expert System, what it did was different from the content and only improper reasoning; if the activity produced semantic evaluations about the light, the blue, the sound, the sharpness, the lever etc., then it was reasoning even if it was a process that reasoned.
But all of this makes sense only when it is there for the proper implementation of reasoning. Otherwise, Dijkstra is valid.