Qual é a diferença fundamental entre a semântica operacional de pequeno e grande passo? Estou tendo dificuldade para entender o que é e a motivação para ter os
Qual é a diferença fundamental entre a semântica operacional de pequeno e grande passo? Estou tendo dificuldade para entender o que é e a motivação para ter os
No artigo "Um tipo de dados JSON replicado sem conflito" , encontrei essa notação para definir formalmente "regras": Como é chamada essa notação? Como eu o leio? Por exemplo: a DOCregra não tem nada no seu "numerador" - por que não? as regras EXECe GETparecem ter dois termos separados acima...
Eu estou familiarizado com a semântica operacional (passo a passo e passo a passo) para definir linguagens de programação. Também estou interessado em aprender semântica denotacional, mas não sei se valerá a pena. Estarei aprendendo o mesmo material de um ponto de vista diferente, ou há idéias que...
Acho que estou bastante confuso sobre o que é chamado de cálculo e o que é chamado de linguagem de programação. Costumo pensar, e pode ter sido dito, que um cálculo é um sistema formal de raciocínio sobre a equivalência de programas. Os programas têm uma semântica operacional especificada por uma...
No trabalho, fui encarregado de deduzir algumas informações de tipo sobre uma linguagem dinâmica. Reescrevo seqüências de instruções em letexpressões aninhadas , da seguinte maneira: return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z if x then T else F; Z =>...
Recentemente, conversei com um amigo sobre um site que propunha desafios regex, combinando principalmente um grupo de palavras com uma propriedade especial. Ele estava procurando por um regex que corresponda a cadeias de caracteres como ||||||||onde o número de |é primo. Eu imediatamente disse a...
Normalmente, vejo que na representação semântica operacional estrutural do loop while, o estado do programa não muda: (whileBdoS,σ)→(ifBthenS;(whileBdoS)elseSKIP,σ)(whileBdoS,σ)→(ifBthenS;(whileBdoS)elseSKIP,σ)(while \> B \> do \>S, \sigma) \rightarrow (if \>B \> then \>S; (while \> B \> do \>S)...
Estou trabalhando com "A Implementação de Linguagens de Programação Funcional", de Simon Peyton Jones, e na página 20 eu vejo: SE VERDADEIRO ((λp.p) 3) ↔ SE VERDADEIRO 3 (por β vermelho) (1) ↔ (λx.IF VERDADEIRO 3 x) (por η vermelho) (2) ↔ (λx.3) (3) Os passos 1 a 2 são explicados como...
Estou fazendo uma tese de pós-graduação sobre a comprovação da correção do programa para multiplicar 2 matrizes usando a lógica Hoare. Para fazer isso, preciso gerar o loop invariável para aninhado para este programa: for i = 1:n for j = 1:n for k = 1:n C(i,j) = A(i,k)*B(k,j) + C(i,j); end...
Estou tentando provar algumas declarações sobre a execução em programas Java sob algumas restrições pesadas (basicamente tenho uma conjectura de que, se dois métodos satisfazem um conjunto de restrições para uma determinada entrada, então eles são equivalentes - ou seja, que retornam valor e estado...