Thaumaturge said:
I wouldn't call an unstructured “if-else” tree a “set of rules”--to my mind that implies more structure, an underlying logic. A “process”? Maybe. But then, as you say, all programs must be algorithms, to a degree that I feel stretches the term a bit beyond its spirit.
What makes it an algorithm isn't that a process happened, it's that the process was rule-based. An if-else tree is a set of rules that govern what functionality is reached given some inputs, so it is an algorithm. Just because the operation is O(1) and doesn't involve a loop does not mean it is not an algorithm. Array indexing is O(1) and also an algorithm, albeit an extremely simple one. Generating the next pseudorandom number in a sequence can be O(1) and is also an algorithm. Labelling them as such does not stretch the definition of algorithm, even if we don't have a whole lot to say about them from an algorithmic analysis perspective.
If you perform a series of steps that appear random and patternless (ie. an RNG applied to dance steps), but actually follow rules, then you are “performing an algorithm.” You could describe that algorithm to someone else and they could recreate your steps if they followed those rules.