小编jch*_*chl的帖子

如何在假设中用∀和replace代替⋀和.

我是一个Isabelle新手,我对⋀和∀之间以及⟹和between之间的关系感到困惑(实际上,很多).

我有以下目标(这是一个高度简化的版本,我最终得到了一个真实的证明):

??x. P x ? P z; P y? ? P z
Run Code Online (Sandbox Code Playgroud)

我想通过专业化x与y得到⟦Py⟹Pz来证明; Py⟧⟧Pz,然后使用modus ponens.这有助于证明非常相似:

??x. P x ? P z; P y? ? P z
Run Code Online (Sandbox Code Playgroud)

但我无法让它为上述目标而努力.

有没有办法将前一个目标转变为后者?如果没有,这是因为它们在逻辑上是不同的陈述,在这种情况下有人可以帮我理解差异吗?

isabelle

6
推荐指数
1
解决办法
410
查看次数

Can(s是"")和(s =="")在Python 2.6.2中会给出不同的结果吗?

正如任何Python程序员所知,你应该使用==而不是is比较两个字符串的相等性.但是,是否有任何实际情况( s is "" ),并( s == "" )会在Python 2.6.2给出不同的结果?

我最近遇到( s is "" )了代码审查中使用的代码,虽然指出这是不正确的,但我想举例说明这可能会失败.但是尽可能地尝试,我不能构造两个具有不同身份的空字符串.似乎Python实现必须在许多常见操作中特殊情况下使用空字符串.例如:

>>> a = ""
>>> b = "abc"[ 2:2 ]
>>> c = ''.join( [] )
>>> d = re.match( '()', 'abc' ).group( 1 )
>>> e = a + b + c + d 
>>> a is b is c is d is e
True
Run Code Online (Sandbox Code Playgroud)

然而,这个问题表明,有情况( s is "" …

python string identity equality

5
推荐指数
3
解决办法
788
查看次数

如何在分解存在假设时自动生成"好"名称

我有一个存在主义假设,例如:

H : exists (a : A) (b : B) (c : C), P a b c
Run Code Online (Sandbox Code Playgroud)

我想分解为:

a : A
b : B
c : C
H0 : P a b c
Run Code Online (Sandbox Code Playgroud)

这种策略decompose [ex] H; clear H正是这样做的,除了变量的名称变成x,x0x1而不是a,b,c.有没有办法分解这个假设,自动生成"好"的名字(与intros目标相同forall (a : A) (b : B) (c : C), P a b c)?

coq

5
推荐指数
1
解决办法
498
查看次数

MonadState类型类声明的语法

可能重复:
Haskell类定义中的"|"是什么?

我对Haskell很新.在MonadState文档中,我看到以下内容:

class Monad m => MonadState s m | m -> s where
    get :: m s
    put :: s -> m ()
Run Code Online (Sandbox Code Playgroud)

| m -> s这里的语法是什么?

haskell typeclass

4
推荐指数
1
解决办法
291
查看次数

如何将Text.JSON.Generic与可选的JSON字段一起使用?

是否可以使用Text.JSON.Generic包含可选字段的JSON记录类型?我希望如果我宣布Haskell类型为"只是工作" Maybe a,例如:

import Text.JSON.Generic

data Record = Record {
   myMandatoryField :: Integer,
   myOptionalField :: Maybe Integer
} deriving (Eq, Show, Data, Typeable)
Run Code Online (Sandbox Code Playgroud)

但这不是正确的事情.

如果无法使用可选字段Text.JSON.Generic,是否有可选的Haskell-JSON数据绑定库可以使用可选字段?

data-binding json haskell

3
推荐指数
1
解决办法
1004
查看次数

标签 统计

haskell ×2

coq ×1

data-binding ×1

equality ×1

identity ×1

isabelle ×1

json ×1

python ×1

string ×1

typeclass ×1