Spatial reasoning