Duality in Linear Programming