Let's say I have patented an algorithm, but want to make the source of an implementation of the invention freely available and allow non-commercial use. The most common opensource licenses do not have "non-commercial" restrictions, and creative commons is not recommended for software.
It is well known that the MIT and BSD licenses do not grant explicit rights to the use of patents embodied in the licensed software (the MIT license contains the phrase
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
As such, I was thinking of using an MIT or BSD license for the software, while including a "patent pending" or "patented" warning somewhere, along with instructions on how to obtain a license to the patent (once granted).
Is this a good idea? Does opensourcing my implementation have any legal implications, e.g. with respect to enforceability of the patent? Would an MIT / BSD license on the software not imply a right to use the patent, especially if the software license is granted by the patent holder?