Imagem: gerada com Google Gemini
A realidade é um sistema aberto. Registros chegam atrasados. Testemunhas se retratam. Sensores são recalibrados. Políticas mudam. Em nenhum momento podemos afirmar que todas as observações relevantes já chegaram, porque nem sequer sabemos o que ainda permanece por descobrir.
A ação é diferente. Cobrar, pagar, conceder acesso, disparar um alarme: cada uma exige uma resposta fechada. Uma decisão precisa terminar mesmo quando a realidade não termina. Entre um mundo aberto e uma ação finita há uma lacuna estrutural. Mais confiança do modelo, uma cadeia de raciocínio mais longa ou outra camada de agentes não conseguem fechar essa lacuna.
A primeira pergunta, portanto, não é “O que é verdade?”. É:
Em um mundo de claims sem fim conhecido, quem pode fixar as premissas para esta decisão, sob quais regras?
O que entra em um sistema não é o evento em si. É um contrato, um registro de pagamento, um log de sensor, um vídeo, um testemunho ou uma mensagem: um fragmento produzido por um observador, em um momento, através de uma transformação, dentro de um escopo, com modos de falha. O sistema precisa receber isso como Claims, não fatos.
Mas preservar Claims não basta para agir. Claims podem entrar em conflito. Um registro ausente pode significar que um evento nunca ocorreu, ou simplesmente que a coleta falhou. Vários Claims podem precisar ser combinados para derivar uma única premissa. Se um Open Claims ledger for direto para um motor de julgamento, coleta, apuração de fatos e aplicação de regras colapsam de volta em um único ato opaco.
O que precisamos é de um procedimento explícito que construa o estado factual permitido para uma decisão particular. Chamo esse procedimento de Projection, e seu resultado de Graph of Accepted Facts, ou GAF.
Open Claims
│
▼
Projection
│ evaluation · conflict resolution · derivation · absence policy
▼
Graph of Accepted Facts (GAF)
│
▼
Closure
│ GAF · scope · policy · rules · runtime frozen
▼
Deterministic Verdict
│
▼
Authorized Action
│
└── new evidence · policy change · appeal · defect
│
▼
Reopen / Re-projection
O objetivo não é coletar mais fatos. É separar a construção das premissas do julgamento do cálculo sobre essas premissas.
Uma entrada finita ainda não é um mundo fechado
Um conjunto finito de Claims não constitui um mundo fechado. Se um pagamento não aparece em um banco de dados, não podemos concluir imediatamente que nenhum pagamento ocorreu. O registro pode estar ausente, atrasado, mal roteado ou retido por outra instituição.
A Projection precisa, portanto, fixar o significado da ausência, não apenas a lista de entradas:
- Qual fonte é considerada completa para este sujeito, predicado, intervalo e período?
- Onde uma suposição de mundo fechado pode ser aplicada?
- Um registro ausente significa
falseouunknown? - Como a negação explícita é distinguida de dados ausentes?
- O que o sistema deve retornar quando a evidência é insuficiente?
O artigo fundacional de Raymond Reiter, On Closed World Data Bases, formalizou o movimento crucial: sob uma suposição de mundo fechado, a incapacidade de provar um literal fundamental positivo pode licenciar sua negação. Esse movimento é útil precisamente porque não é universalmente seguro. Ele exige uma fronteira declarada.
Suponha que um banco forneça um ledger de transações finalizado para uma conta e um período, e que a política de Projection aceite esse ledger como completo dentro desse escopo. A ausência pode então contar como evidência de que nenhuma transação correspondente existe ali. A ausência de uma referência de pagamento no arquivo de mensagens de um inquilino não prova nada disso. Uma fonte está fechada para uma consulta declarada; a outra permanece aberta.
Closure não é a afirmação “lemos até aqui”. É um contrato que define onde a própria ausência se torna informação computável.
Projection não é um botão que promove um Claim a fato
Projection não pode ser reduzida a anexar accepted, rejected ou held a um Claim inteiro. Claims reais raramente são tão limpos.
- “Enviei o aluguel no dia cinco” pode ter uma data verificada, mas uma finalidade não verificada.
- Dois registros independentes podem ser necessários para estabelecer um único pagamento.
- Um Claim pode apoiar uma proposição e refutar outra.
- Um fato pode ser derivado mesmo que nenhuma fonte o afirme literalmente.
- Uma fonte confiável ainda pode estar indefinida quanto a qual evento seu registro descreve.
Evaluation é relacional, não uma marca sobre um Claim inteiro. Ela conecta um ou mais Claims, uma Proposition atômica e uma Projection particular. Uma Derivation então combina Evaluations, premissas previamente aceitas e regras explícitas para produzir um Accepted Fact.
Claims ───────┐
Proposition ──┼── Evaluation ── accepted / rejected / unknown
Projection ───┘ │
▼
Derivation ── Claims · Facts · Rules
│
▼
Accepted Fact
Um Claim preserva quem afirmou ou observou o quê. Uma Proposition é a menor afirmação sendo avaliada. Uma Evaluation registra como os Claims incidem sobre essa Proposition sob uma Projection. Uma Derivation é o objeto de prova que mostra como o resultado foi produzido. Um Accepted Fact é a premissa que o procedimento permite que este julgamento use.
O mesmo Claim pode, portanto, produzir um Accepted Fact diferente — ou nenhum — sob outro propósito, prazo de corte, ônus da prova ou autoridade. Um Accepted Fact não é a verdade absoluta sobre toda a realidade. É uma premissa admitida para uso dentro de uma fronteira de decisão declarada.
Por que o resultado é um grafo
As premissas de um julgamento não são frases isoladas. Quem pagou a quem, quando, quanto, sob qual contrato, em direção a qual obrigação, e enquanto esse contrato estava em vigor são afirmações conectadas.
Um Graph of Accepted Facts contém essas premissas e suas relações semânticas, junto com a derivation e a proveniência que as produziram:
- entidades, ações, tempos, quantidades e estados;
- Claims que apoiam ou refutam cada Proposition;
- fontes originais e agentes responsáveis;
- Evaluations e regras de derivation;
- alternativas rejeitadas ou não resolvidas;
- relações temporais, lógicas e de substituição.
O propósito do grafo não é explicação decorativa. É dependência rastreável por máquina.
Partindo de um Verdict, um auditor deve conseguir descer através do GAF e de suas regras até os Claims originais. Partindo de um Claim ou fonte invalidados, o sistema deve conseguir encontrar todo Accepted Fact, Closure, Verdict e Action que possa exigir revisão.
Proveniência sozinha é insuficiente. Uma análise de impacto completa também precisa de dependências de derivation, dependências negativas, condições agregadas e escopo de política. Uma conclusão pode depender não de um Claim que existe, mas da ausência declarada de qualquer Claim qualificado. O padrão PROV-O: The PROV Ontology padroniza proveniência interoperável em torno de entidades, atividades, agentes e relações qualificadas; o ônus adicional do GAF é preservar a aceitação específica da decisão e as dependências negativas necessárias para reabrir julgamentos.
Este é um modelo lógico de dados, não um mandato de banco de dados em grafo. Um banco de dados relacional, um armazenamento de objetos endereçado por conteúdo, um log de eventos somente-anexação, ou um banco de dados em grafo podem implementá-lo. O armazenamento físico é válido se preservar os nós, as relações tipadas, a linhagem e as consultas de dependência sem perda semântica.
Closure é maior que GAF
O GAF preserva Accepted Facts e sua Derivation e Provenance. Closure é maior que GAF: ela congela exatamente qual GAF foi usado, para qual pergunta, sob quais condições. É o contrato de replay da decisão.
Uma Closure deve conter no mínimo:
- a pergunta e o propósito do julgamento;
- o evento, o sujeito e o escopo temporal;
- o snapshot exato do GAF e seu identificador de integridade;
- declarações de completude e o tratamento de ausência, negação e incertezas;
- a política de Projection e a versão de sua implementação;
- as regras de Verdict e a versão do motor;
- condições de runtime como precisão numérica, ordenação e desempate;
- regras de canonicalização necessárias para identificar o mesmo grafo novamente.
Se a mesma Closure executada no mesmo runtime produzir um Verdict diferente, a camada de computação está defeituosa. Se as Closures diferem, a discordância pode ser localizada nas entradas, na política de Projection, nos Accepted Facts, nas regras ou no runtime.
Determinismo não significa conhecer a realidade perfeitamente. Significa que o mesmo mundo fechado deve computar da mesma forma.
Acompanhe um caso do início ao fim
Um locador afirma que o aluguel de julho está em aberto. Um inquilino afirma que o aluguel foi transferido no dia cinco. O ledger bancário finalizado mostra que o locador recebeu mil dólares naquele dia, mas o memorando da transferência está vazio. O contrato exige mil dólares até o dia cinco de cada mês.
O Open Claim Ledger preserva os quatro registros sem que um sobrescreva o outro.
| Claim | Conteúdo | Status da fonte |
|---|---|---|
| Claim A | o aluguel de julho está em aberto | afirmação do locador |
| Claim B | o aluguel foi transferido no dia cinco | afirmação do inquilino |
| Claim C | a conta do locador recebeu mil dólares no dia cinco | ledger bancário finalizado |
| Claim D | o aluguel mensal é mil dólares, vencendo no dia cinco | contrato válido |
A Projection estreita a pergunta para: “A inadimplência do aluguel de julho foi estabelecida?”. Ela aceita o ledger bancário como completo para a conta e o período. Também aplica uma política que não infere a alocação a uma dívida particular sem um memorando ou acordo separado.
Claim C e Claim D apoiam Propositions aceitas. A data e o valor do Claim B são apoiados pelo Claim C, mas sua alocação ao aluguel de julho permanece unknown. O Claim A é a afirmação de uma das partes sobre a conclusão desejada, não evidência independente de não pagamento, então não se torna um Accepted Fact por repetição.
O GAF registra:
The contract required monthly payment by the fifth. [accepted]
The landlord received the contractual amount that day. [accepted]
Allocation of that payment to the July debt is unresolved.[unknown]
July rent delinquency has not been established. [not derived]
A Closure vincula este GAF à política de Projection, ao escopo de completude do ledger, ao horário de corte e ao motor de Verdict. O Verdict não é delinquent; é undetermined. A Authorized Action, portanto, não é uma carta de cobrança, mas uma solicitação para estabelecer a alocação.
Mais tarde, um recibo original de transferência com o memorando “aluguel de julho” chega como um novo Claim. A antiga Closure é preservada. Um evento de Reopen inicia uma nova Projection. Se o memorando for admitido, um novo GAF aceita a alocação, e uma nova Closure produz paid como Verdict.
A Projection neste exemplo não é uma votação sobre qual pessoa soa mais confiável. Ela fixa a pergunta, a fronteira de completude, as Propositions atômicas, o significado de dados ausentes e as regras de derivation necessárias para construir um estado factual decidível.
Preserve a decisão como um contrato
O exemplo ainda contém um gargalo. Se todo pagamento sem memorando exigir que o locador confirme a alocação, a incerteza não foi eliminada; ela apenas foi movida para uma fila de aprovação humana.
A primeira confirmação deveria resolver o caso. Um padrão repetido deveria fazer mais: preservar a decisão como um contrato que possa se tornar entrada de Projection futura.
Suponha que o locador confirme o pagamento e ambas as partes aprovem esta regra:
Um pagamento é alocado ao aluguel do mês corrente quando chega da conta registrada do inquilino até a data de vencimento, é igual ao valor contratual, e nenhuma outra dívida está em aberto. Um caso que viole qualquer condição exige revisão.
Isso produz quatro registros distintos:
Case Decision ── this payment satisfied the July rent
Policy Candidate ── matching future payments may satisfy monthly rent
Ratified Contract── authorized conditions, exceptions, effective date, version
Policy Exception ── ambiguity outside the contract returns to human review
A próxima Closure referencia a versão da política ratificada. Claims correspondentes podem então ser projetados sem perguntar novamente ao locador a mesma questão; apenas uma nova exceção consome julgamento humano. A decisão humana é usada uma vez, enquanto sua estrutura autorizada continua funcionando.
Mas uma decisão ainda não é uma política. Um sistema não deve transformar silenciosamente uma confirmação em precedente. A pessoa com autoridade precisa ratificar o escopo da regra, exceções, data de vigência e se ela se aplica retroativamente. Até lá, o registro do caso é apenas um Policy Candidate. Se um novo contrato não for explicitamente retroativo, ele rege Closures posteriores e não reescreve as anteriores.
Isso adiciona um segundo laço de preservação ao GAF. Claims preservam o que entrou vindo do mundo. GAF e Closure preservam o que um julgamento particular aceitou. Uma política ratificada preserva como um humano autorizado resolveu uma ambiguidade recorrente, de modo que a próxima Projection comece com um contrato mais forte em vez do mesmo gargalo.
Erros diferentes exigem reparos diferentes
Uma vez que Projection, Verdict e Action são separados, um “resultado errado” se decompõe em falhas diferentes:
- deixar de considerar um Claim relevante é um erro de coleta;
- avaliar incorretamente uma fonte ou Proposition é um erro de Projection;
- aplicar a regra errada a Accepted Facts corretos é um erro de computação;
- renderizar um Verdict correto de forma imprecisa é um erro de comunicação;
- executar um Verdict correto contra o alvo, limite ou autoridade errados é um erro de Action.
Essa taxonomia não elimina o erro. Ela nos diz o que reabrir.
Um erro de coleta exige outro Claim. Um erro de Projection exige revisão da Evaluation e da Derivation. Um erro de computação pode preservar a Closure enquanto corrige e compara o motor. Um erro de Action não deve reescrever os fatos; ele exige cancelamento, correção ou compensação no mundo externo.
Chamar tudo isso de “o modelo errou” destrói a distinção. Uma vez que a causa se perde, o sistema não consegue provar o que mudou após o reparo.
Accepted Fact não é autoridade para agir
Um Accepted Fact não confere poder. “O aluguel está em atraso” e “este sistema pode enviar uma carta de cobrança” são Propositions diferentes.
O motor de Verdict consome uma Closure e emite um julgamento com um traço de computação. Uma Authorized Action deve verificar separadamente:
- quem autorizou o efeito;
- qual sujeito e objeto ela tem como alvo;
- limites aplicáveis de valor e frequência;
- se as repetições são idempotentes;
- que recibo comprova a execução;
- como um efeito equivocado pode ser cancelado ou compensado.
Produção de fatos, julgamento e execução são separados porque cada um exerce um tipo diferente de autoridade.
Um mundo fechado deve permanecer reabrível
Uma Closure deve ser imutável sem fingir ser verdade eterna. Evidências podem chegar atrasadas. Uma fonte pode se revelar fraudulenta. Um defeito de política pode ser descoberto. Uma parte afetada pode recorrer.
Sobrescrever o resultado antigo destruiria a explicação para a ação tomada naquele momento. Reopen, portanto, é um evento novo, não uma edição da Closure antiga.
Nova evidência, uma mudança de política, um recurso ou um relatório de defeito é registrado. O grafo de dependências identifica Closures possivelmente afetadas. Se um procedimento autorizado permite a reabertura, uma nova Projection produz um novo GAF, Closure e Verdict. O novo resultado declara o que ele substitui, sem sobrescrever a história.
Se uma Action já mudou o mundo, o recálculo não consegue revertê-la. Cancelamento, avisos de correção, reembolsos e compensação são, eles mesmos, novas Actions com sua própria autorização e recibos.
A capacidade de reabertura não enfraquece o closure. O Closure se torna legítimo precisamente quando o sistema preserva o que foi fixado e permite substituição apenas por meio de um procedimento declarado.
LLMs não podem substituir a fronteira
A maioria das aplicações de LLM de ponta a ponta mistura interpretação da pergunta, recuperação, seleção de fontes, apuração de fatos, aplicação de regras e expressão em uma única geração. Se os Claims adotados e rejeitados não forem externalizados, a mesma resposta não prova o mesmo fundamento. Uma resposta alterada não revela se a fronteira de entrada ou a computação mudou.
Uma explicação longa ou um traço de raciocínio gerado não resolvem isso. Uma explicação post-hoc não é um registro de execução das entradas, regras e autoridade realmente usadas.
LLMs continuam úteis ao redor da fronteira. Podem extrair candidatos a Claim de fontes não estruturadas, propor Propositions atômicas, explicar conflitos e incertezas, redigir políticas de Projection, e traduzir um Verdict fixo para linguagem humana.
Mas uma proposta não é uma adoção. Um Claim, mapeamento, Evaluation ou regra gerado por LLM precisa se tornar uma entrada versionada com proveniência e passar por um procedimento autorizado. A autoridade final para ações de alta consequência não pode permanecer oculta dentro da geração de linguagem natural.
A contribuição é a cadeia
Os componentes não são todos novos. Raciocínio de mundo fechado, proveniência, sistemas de manutenção de verdade, event sourcing, motores de regras, apuração de fatos jurídica e recursos têm longas histórias. On Closed World Data Bases estabeleceu a distinção entre mundo aberto e fechado, enquanto PROV-O: The PROV Ontology padronizou um modelo de grafo para rastrear entidades através de atividades e agentes responsáveis.
A contribuição é a cadeia, montada como um único protocolo de responsabilidade:
Claims → Projection → GAF → Closure → Verdict → Action → Reopen
Cada seta é uma fronteira de autoridade e erro, não apenas uma transformação de dados. O agente que preserva Claims, a autoridade que admite premissas, o motor que computa um Verdict, e o gateway que muda o mundo operam sob contratos diferentes. Seus registros se conectam, mas nenhum estágio herda silenciosamente a autoridade de outro.
GAF não é a invenção de mais um banco de dados. É a proposta de tornar toda a passagem de claims abertos a fatos acionáveis auditável, reproduzível e recorrível.
O objetivo é o closure controlado, não a verdade perfeita
Não podemos construir um sistema que conheça todo o mundo aberto. Podemos construir um que declare qual informação aceitou como premissa, e por quê.
Open Claims preservam desacordo e incerteza. Projection fixa propósito, escopo, ônus e o significado da ausência. GAF conecta premissas admitidas às suas relações e linhagem. Closure congela as condições para replay. Verdict computa sobre a entrada fechada. Action muda a realidade sob autoridade separada. Reopen revisita a fronteira sem apagar a história.
Com esse ciclo, o erro deixa de permanecer uma única alucinação opaca. Podemos distinguir o que o sistema deixou passar, o que aceitou erroneamente, o que computou erroneamente a partir de premissas aceitas, e o que executou erroneamente após um julgamento correto.
Projetar Claims em um GAF não é uma forma de tornar as máquinas infalíveis. É fixar sobre o que a máquina julgou, para que o julgamento possa ser reproduzido, contestado e corrigido.
O aforismo “a matemática é verdadeira porque computa dentro de um sistema fechado” aponta para um fato mais estreito e defensável. Uma vez que axiomas, definições e regras de inferência são fixados, uma derivation dentro dessa fronteira formal pode ser verificada e reproduzida (Formalism in the Philosophy of Mathematics). Isso não torna toda verdade matemática computável, toda proposição decidível, ou todo sistema axiomático completo. Closure garante a reprodutibilidade de uma derivation admitida, não onisciência.
O julgamento no mundo real precisa da mesma disciplina antes da computação. GAF não é a verdade em si. É o mundo fechado que fixa quais premissas foram aceitas a partir da realidade aberta, de modo que um verdict possa ser reproduzido — e contestado — dentro dele.
Artigos relacionados
- A verdade não é descoberta — o argumento físico, matemático e jurídico de por que a verdade só aparece depois que um mundo é fechado
- Triplas são Claims, não fatos — por que um grafo de conhecimento deveria preservar claims concorrentes antes de computar um julgamento contextual
- toulmin — um motor de regras que computa contratos — um exemplo de separação entre premissas aceitas e computação determinística de regras
Leitura adicional (externa)
- On Closed World Data Bases — o relato original de Raymond Reiter sobre a avaliação de consultas em mundo aberto e fechado
- PROV-O: The PROV Ontology — a recomendação do W3C para proveniência interoperável
- Formalism in the Philosophy of Mathematics — o relato formalista da verdade matemática dentro de um sistema regido por regras
Fontes
- Reiter, Raymond. On Closed World Data Bases. University of British Columbia, Technical Report.
- W3C. PROV-O: The PROV Ontology. W3C Recommendation.
- Stanford Encyclopedia of Philosophy. Formalism in the Philosophy of Mathematics.