小编Ada*_*icz的帖子

证明继承人的平等替代财产

我试图从"精益证明中的证据"第7章中理解归纳类型.

我为自己设定了一个任务,证明自然数的继承者有平等的替代属性:

inductive natural : Type
| zero : natural
| succ : natural -> natural

lemma succ_over_equality (a b : natural) (H : a = b) :
  (natural.succ a) = (natural.succ b) := sorry
Run Code Online (Sandbox Code Playgroud)

经过一些猜测和相当详尽的搜索后,我能够满足编译器的几种可能性:

lemma succ_over_equality (a b : natural) (H : a = b) :
  (natural.succ a) = (natural.succ b) :=
    eq.rec_on H (eq.refl (natural.succ a))
    --eq.rec_on H rfl
    --eq.subst H rfl
    --eq.subst H (eq.refl (natural.succ a))
    --congr_arg (? (n : natural), (natural.succ n)) H …
Run Code Online (Sandbox Code Playgroud)

formal-verification theorem-proving dependent-type lean

8
推荐指数
1
解决办法
183
查看次数

Java:对静态上下文的引用类似于类自引用`this`,经常使用`this`作为编码风格

在python上提起,自从Java最近开始以来,我一直使用类自引用,this无论它是否是强制性的.我相信它有助于代码的可读性,因为阅读它的人不必自己弄清楚变量属于什么范围.我想与静态作用域类似地工作:在使用static关键字对静态上下文的所有引用之前,因此使代码更加不言自明.但是Java并不喜欢它.我知道我可以在技术上简单地使用类名,但这看起来非常难看,特别是当一个类有一个冗长的名字时.我也可以在静态方法和属性的名称前加上一个特殊的前缀,但我不想被视为偏执狂.你们会认为这是一个很好的OOP风格吗?或者我应该完全忘记任何事情,并让javac做所有范围绑定?

java static reference this code-layout

7
推荐指数
1
解决办法
1462
查看次数

如何证明 a = b ?a + 1 = b + 1 精益?

我正在学习精益教程的第 4 章。

我希望能够证明简单的等式,例如a = b ? a + 1 = b + 1 无需使用 calc 环境。换句话说,我想明确构建以下证明项:

example (a b : nat) (H1 : a = b) : a + 1 = b + 1 := sorry

我最好的猜测是我需要使用eq.subst标准库中关于自然数相等的一些相关引理,但我不知所措。我能找到的最接近的精益例子是这样的:

example (A : Type) (a b : A) (P : A ? Prop) (H1 : a = b) (H2 : P a) : P b := eq.subst H1 H2

formal-verification dependent-type lean

5
推荐指数
2
解决办法
730
查看次数

在csv文件中编写和加载表达式集

在R中,可以使用编写生物传感器ExpressionSet到csv文件中csv.write.例如,使用可用作bioconductor包的标准膀胱填充数据,以下代码将csv文件写入当前工作的drectory:

library("bladderbatch")
data("bladderdata")
write.csv(bladderEset, "bladderEset.csv")
Run Code Online (Sandbox Code Playgroud)

是否有一个工具可以将生成的csv文件读回到R中ExpressionSet

如果没有,是否有一个ExpressionSet ? csvserialiser/deserialiser,它既可以将ExpressionSets输出为csv文件,也可以将csv文件作为ExpressionSets读取?

我问的原因是因为我需要用Python和Java代码ExpressionsSets互动,我可以很容易地用"CSV"文件,但不能与".rda",".CEL"或其他二进制文件.

csv r bioconductor

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

ffmpeg中带有音频的屏幕截图

我正在使用在Fedora 20的此修订版中从源代码构建的ffmpeg 。

我可以使用以下命令完美录制音频:

FFmpeg/ffmpeg -f alsa -ac 2 -i pulse -- output.wav
Run Code Online (Sandbox Code Playgroud)

但是,当我同时尝试屏幕捕获和音频时,如下所示:

FFmpeg/ffmpeg -video_size 800x600 -framerate 25 -ac 2 -f x11grab -i :0.0+0,0 -ac 2 -f alsa -i pulse -ac 2 -acodec copy output.mpeg -ac 2
Run Code Online (Sandbox Code Playgroud)

我正在获取一个音频通道为0的视频,我可以检查其运行情况 FFmpeg/ffplay output.mpeg

Input #0, mpeg, from 'output.mpeg':
  Duration: 00:00:09.44, start: 0.540000, bitrate: 2743 kb/s
    Stream #0:0[0x1e0]: Video: mpeg1video, yuv420p(tv), 800x600 [SAR 1:1 DAR 4:3], 104857 kb/s, 25 fps, 25 tbr, 90k tbn, 25 tbc
    Stream #0:1[0x1c0]: Audio: …
Run Code Online (Sandbox Code Playgroud)

ffmpeg screen-capture audio-recording

4
推荐指数
2
解决办法
6030
查看次数

为什么这个简单的c程序与gcc(clang)内联汇编表现出不确定的行为?

我正在尝试用gcc汇编程序扩展做一个非常简单的事情:

  • 将unsigned int变量加载到寄存器中
  • 加1吧
  • 输出结果

在编译我的解决方案时:

#include <stdio.h>
#define inf_int volatile unsigned long long

int main(int argc, char *argv[]){
   inf_int zero = 0;
   inf_int one = 1;
   inf_int infinity = ~0;
   printf("value of zero, one, infinity = %llu, %llu, %llu\n", zero, one, infinity);
   __asm__ volatile (
      "addq $1, %0"
      : "=r" (infinity)
   );
   __asm__ volatile (
      "addq $1, %0"
      : "=r" (zero)
   );
   __asm__ volatile (
      "addq $1, %0"
      : "=r" (one)
   );
   printf("value of zero, one, infinity = %llu, …
Run Code Online (Sandbox Code Playgroud)

x86 gcc gnu-assembler inline-assembly

2
推荐指数
1
解决办法
3878
查看次数

检查 R 中向量变量的类型

如何区分字符向量和 R 中的字符?

双方typeof(c("a", "b", "c"))typeof("a")返回'character'

r

0
推荐指数
1
解决办法
6430
查看次数