Я новичок в Прологе, и у меня есть два кортежа из двух списков, использующих рекурсию. Например, fun c ([1, 2, 3], [4, 5, 6]) должно выводить [(1, 4), (1,5), (1,6), (2, 4) , (2, 5), (2, 6), (3, 4), (3, 5), (3, 6)]. У меня есть следующий код:
func([],_,[]).
func([X|T1],Y,[Z|W]):-
match(X,Y,Z),
func(T1,Y,W).
match(X,[Y],[(X,Y)]).
match(X,[Y|T],[(X,Y)|Z]) :-
match(X,T,Z).
Но мой вывод для удовольствия c ([1,2,3], [4,5,6], X) это X = [[(1, 4), (1, 5), (1, 6)], [(2, 4), (2, 5), (2, 6)], [(3, 4), (3, 5), ( 3, 6)]].
Как мне избавиться от лишних квадратных скобок в середине моего вывода? Я пытался играть с круглыми скобками и скобками в обеих моих функциях, но не могу понять.