Здравствуйте! Помогите решить задачу! 
Язык элементарной арифметики предназначен для записи утверждений о натуральных числах. (включая ноль).
Сигнатура такого языка содержит:
функциональные символы(операции) 
 
 и предикатный символ  

. 
Степень означает количество принимаемых аргументов. 

 означает увеличение числа на 1. Остальные символы используются в привычной нам интерпретации. 
(Возможно я описал арифметику Пеано, но я не уверен)
Кроме того, дана функция(двухместный предикат) Геделя -

, такая, что для произвольного(конечного) множества 

 найдется такое 

, что 

 будет истиной для любого 

 в 

. (кодируем любые последовательности одним числом)
На таком языке можно описать, например, следующие предикаты.





Теперь нам дали следующую операцию:

Нужно найти операции fst, snd такие что 

.
Я попытался построить похожие операции: isFst, isSnd, но очевидно, что они не подходят под определение выше(отличаются арностью).


Подскажите, может быть я что-то упускаю, и есть какой-то трюк который превращает предикат в операцию?