The keep things as simple I will use very basic example.
The problem is to aggregate 4 numbers to have 10.
One developer uses below code/algorithm (Case 0) in his program file and license it as proprietary.
var firstNumber = 1; var secondNumber = 3; var thirdNumber = 3; var fourthNumber = 3; var sum = firstNumber + secondNumber + thirdNumber + fourthNumber;
What happens if a developer (Case 1) copies all code/algorithm and just replaces variable names?
var first = 1; var second = 3; var third = 3; var fourth = 3; var sum = first + second + third + fourth;
Or if another developer (Case 2) again copies all code/algorithm but this time replaces the numbers itself.
var firstNumber = 2; var secondNumber = 2; var thirdNumber = 4; var fourthNumber = 2; var sum = firstNumber + secondNumber + thirdNumber + fourthNumber;
I want to ask what licenses actually protect? Do licences protect the code listing or algorithm? If an algorithm is protected by either proprietary or open source license, does it mean no other developer can modify and use it? Are even variable names also protected and prohibited to re-use?
And most importantly who does decide whether algorithm are same or not? For example, is Case 0 and Case 1 same although the variable names are changed?
And as last question, if Case 0 would have been licensed as Open Source, would it change the evaluation process?