A software patent is a patent directed to a software program or an algorithm implemented in or using a computer.