Answer
While copyright law protects the expression of algorithms in source code, individuals who independently develop knowledge of algorithms through legitimate means generally have the right to write their own programs expressing those algorithms and market them, provided they do not directly copy copyrighted code.
Work Step by Step
The copyright laws generally support ownership rights associated with the expression of an idea rather than the idea itself. This principle extends to source programs and the algorithms they express. Therefore, while the specific code written to implement an algorithm is copyrightable, the underlying algorithm itself is not.
Regarding the extent to which a person who knows the algorithms used in a commercial software package should be allowed to write their own program expressing those same algorithms and market it, it largely depends on whether the individual has accessed the algorithms through legitimate means or through unlawful means such as misappropriation or breach of confidentiality agreements.
If the person has obtained knowledge of the algorithms through legitimate means such as reverse engineering or independent creation, they generally have the right to write their own program expressing those algorithms and market it, as long as they do not directly copy the copyrighted code from the original software package. This is because copyright law does not protect ideas or algorithms, only the specific expression of those ideas.
However, if the person has obtained the algorithms through unlawful means such as misappropriation of trade secrets or breach of confidentiality agreements, they may be subject to legal action for intellectual property infringement. In such cases, they may not be allowed to write their own program expressing those algorithms and market it without facing potential liability for intellectual property violations.