Procurando por algoritmos sobre concomitância de períodos de datas, ou mesmo de concomitância numérica na internet, pouco achei sobre. Portanto acho que serei pioneiro na escrita sobre tal, e espero que o post possa ajudar também àqueles que trabalham desenvolvendo softwares previdenciários para calcular o tempo aproveitado de serviço para contribuição de aposentadoria.
Introdução à concomitância de períodos numéricos
Primeiramente, o que é concomitar?
De acordo com o Dicionário inFormal online significa "V.T. Ação de produzir ou fazer várias coisas ao mesmo tempo, no mesmo momento. ". Entende-se por "período", dois números x e y, por exemplo (início e fim), capazes de gerar um conjunto numérico linear, criando então um vetor com elementos sequenciais de x até que chegue no y: {x, x+1, x+2, x+3, ... , y}.
Exemplificando: Tome como base x=2, y=6, então o conjunto de x e y será: {2, 3, 4, 5, 6}. Vamos nomear esse conjunto de "P", para entender mais à frente.
A concomitância de períodos nada mais é do que a intersecção de conjuntos numéricos, formando novos conjuntos a partir da intersecção que foi feita (se houver). Como o foco desse post visa auxiliar desenvolvedores de softwares previdenciários, a concomitância de períodos numéricos e de períodos de datas, nesse caso, funciona um pouco diferente, não sendo apenas fazer meras intersecções.