public function testIntersectWithObjects()
{
$vector1 = new Vector([1, 2, 3]);
$vector2 = new Vector([1, 2, 3]);
$A = new Set([1, 2, $vector1]);
$B = new Set([2, 3, $vector2]);
$A∩B = $A->intersect($B);
$expected = new Set([2]);
$this->assertEquals($expected, $A∩B);
$this->assertEquals($expected->asArray(), $A∩B->asArray());
$A = new Set([1, 2, $vector1]);
$B = new Set([2, 3, $vector2, $vector1]);
$A∩B = $A->intersect($B);
$expected = new Set([2, $vector1]);
$this->assertEquals($expected, $A∩B);
$this->assertEquals($expected->asArray(), $A∩B->asArray());
}