public void PieceIntersection1()
        {
            var p    = Piece.Interval(3, 4).AsInterval().SetLeftClosed(true).SetRightClosed(true);
            var p1   = Piece.Interval(3.5, 4.5).AsInterval().SetLeftClosed(true).SetRightClosed(true);
            var p2   = Piece.Interval(3.5, 4).AsInterval().SetLeftClosed(true).SetRightClosed(true);
            var ints = PieceFunctions.Intersect(p, p1);

            Assert.IsTrue(ints == p2, ints + " instead of " + p2);
        }
        public void PieceIntersection3()
        {
            var p  = Piece.Interval(3, 7).AsInterval().SetLeftClosed(true).SetRightClosed(true);
            var p1 = Piece.Interval(1, 4).AsInterval().SetLeftClosed(true).SetRightClosed(true);
            var p2 = PieceFunctions.Intersect(p, p1);
            var p3 = Piece.Interval(3, 4).AsInterval().SetLeftClosed(true).SetRightClosed(true);

            Assert.IsTrue(p2 == p3);
        }