Вот решение с SWI-Prolog:
?- Posicoes = [(1,2), (2,3), (4,4)], nth1(3, Posicoes, (Line, _)).
Posicoes = [(1, 2), (2, 3), (4, 4)],
Line = 4.
Вы можете использовать это для поиска по всем строкам, используя:
?- nth1(Position, $Posicoes, (Line, _)).
Position = Line, Line = 1,
Position = Line, Line = 2,
Position = 3, Line = 4.