A generalisation to Birkhoff–von Neumann theorem