Nem todos os idiomas não regulares são reprovados no teste do lema de bombeamento. A Wikipedia tem um exemplo irritantemente complexo de uma linguagem não regular que pode ser bombeada. Portanto, mesmo que um idioma não seja regular, talvez não possamos provar esse fato usando o lema de bombeamento.
Mas podemos usar o lema de bombeamento para provar que seu primeiro idioma não é regular. Não tenho certeza sobre o segundo.
Afirmação: L1 não é regular.
Prova: pelo lema de bombeamento. Deixeipseja o comprimento do bombeamento. (Vou usar o alfabeto{a,b} ao invés de {0,1}.) E se p=1, então pegue a string abbaa, que está em L1 e bombeá-lo para aabbaa que não está em L1, tão L1 não seria regular.
E se p>1, então pegue a string apbbaN. (Vamos descobrir o que queremosN para ser posterior.) Em seguida, considere qualquer divisão da string em xyz Onde x=ap−k, y=ake z=bbaN.
Agora vamos bombear essa corda ivezes. (Vamos descobrir o que queremosi para ser mais tarde.) Recebemos a string xyiz, que dá ap−kaikbbaN=ap−k+ikbbaN.
Agora vamos voltar. Primeiro, escolhemosN. Então, alguma escolha dekfoi feito. Então, escolhemosi. Queremos descobrir o queN escolher para que, para qualquer escolha de k∈[1,p], podemos escolher um i que torna essa string um palíndromo, tornando o número de as à esquerda é igual ao número à direita. (Ele sempre terá um comprimento uniforme.)
Então, queremos sempre conseguir isso p−k+ik=N. Se brincarmos com a matemática, achamos que devemos escolherN=p+p! e escolher i=p!/k+1.
Então, para recapitular, escolhemos N=p+p! e escolheu a string apbbaN. Então alguma escolha dek foi feito para que a corda fosse composta de ap−kybbaN Onde y=ak. Então nós escolhemosi=p!/k+1. Nós bombeamos a corda para obterap−kyibbaN=ap−kaikbbaN=ap−k+ikbbaN.
Mas sabemos que p−k+ik=p−k+(p!k+1)k=p−k+p!+k=p+p!. EN=p+p!. Então o número deas em ambas as extremidades é o mesmo; portanto, a cadeia é um palíndromo de comprimento par; portanto, não está L1, tão L1 não é regular. □