Isabelle 以应用样式将product/tuple/pair类型的变量拆分为其成员

Isabelle 以应用样式将product/tuple/pair类型的变量拆分为其成员,isabelle,Isabelle,让我们假设我们正在处理一对类型('a×'a),并定义一个fun,为其进行模式匹配 fun test :: "('a × 'a) ⇒ 'a ⇒ bool" where "test (a,b) c = True" 如果我现在有一个类型为('a×'a)的变量a_b,我如何将其替换为应用样式证明中的成对表示形式(a,b)。例如,显示下列引理的最佳方式是什么?如何用测试(a,b)c替换测试a_b c lemma "test a_b c = True" 这是否也适用于假设中的配对 lemma "¬ te

让我们假设我们正在处理一对类型
('a×'a)
,并定义一个
fun
,为其进行模式匹配

fun test :: "('a × 'a) ⇒ 'a ⇒ bool" where "test (a,b) c = True"
如果我现在有一个类型为
('a×'a)
的变量
a_b
,我如何将其替换为应用样式证明中的成对表示形式
(a,b)
。例如,显示下列引理的最佳方式是什么?如何用
测试(a,b)c
替换
测试a_b c

lemma "test a_b c = True"
这是否也适用于假设中的配对

lemma "¬ test a_b c ⟹ flying_pigs"

a\u b
上使用
案例如何