Para aclarar la terminología, uso claro: decidable = recursivo = computable, semidecidable = recursivamente enumerable = computablemente enumerable, co-semidecidable = co-recursivamente enumerable = co-computablemente enumerable.
En la práctica, un método común para mostrar que un lenguaje no es semidecidable es mostrar que no es decidible y que es co-semidecidable. Luego hace uso del hecho de que cualquier lenguaje que sea semidecidable y co-semidecidable también es decidible para concluir que su idioma no es semidecidable. (tenga en cuenta que esto solo funciona en una dirección: un lenguaje no puede ser semidecidable ni co-semidecidable, en cuyo caso necesita algún otro método)
Como ejemplo: sabemos que decidir si un es ambiguo es indecidible, pero es fácil co-semidecidir: simplemente se da una cadena que tiene dos análisis diferentes. Esto implica que no es semidecida si un es ambiguo.CFGCFG
Otro método es mostrar que el lenguaje está completo para algún nivel superior de la jerarquía aritmética .
Por supuesto, es posible demostrar directamente que no hay verificador, pero esto a menudo es tedioso, ya que generalmente repite la prueba de que el problema de detención es indecidible. Sin embargo, tenga en cuenta que el argumento anterior prueba esencialmente de manera implícita que no puede haber verificador, por lo que supongo que podría decir que es un método para demostrar que no hay verificador, pero luego podría considerar cualquier prueba de no semidecidibilidad como prueba de que existe sin verfier.