;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Félix Édouard Justin Émile Borel Matemático francês

7 de junho de 1871, Saint-Affrique (França)

3 de fevereiro de 1956, Paris (França)

Da Página 3 Pedagogia & Comunicação

09/06/2009 15h48

Félix Édouard Justin Émile Borel ingressou, aos 18 anos, na Escola Normal Superior, onde estreitou relações de amizade com o matemático Paul Appell, de quem viria a desposar a filha alguns anos depois.

Aos 26 anos, Borel foi nomeado mestre de conferências da Escola Normal e, pouco depois, titular da cadeira de teoria das funções na Borbonne. Em 1919 assumiu a direção da cadeira de cálculo das probabilidades. Dois anos depois foi eleito para a Academia de Ciências.
 

Teoria das funções

De sua extraordinária atividade científica sobressaem, além das notáveis contribuições no domínio da teoria das funções, os trabalhos originais sobre os conjuntos e os cálculos das probabilidades. Autor da primeira teoria científica da medida de um conjunto de pontos, Borel divide com seus contemporâneos Baire e Lebesgue o mérito de haver lançado os fundamentos da moderna teoria das funções de uma variável real.

Embora não tenha sido Borel o primeiro a definir a soma convencional de uma série divergente, coube-lhe o mérito de conceber e desenvolver uma teoria sistemática sobre o comportamento dessas séries.

Sua teoria sobre as funções integrais e a distribuição de seus valores contribuiu de maneira decisiva para o desenvolvimento dos estudos sobre as funções de variáveis complexas.

Borel definiu os conjuntos de números reais de "medida nula" como aqueles que podem ser recobertos por uma família numerável de segmentos. Criou, então, uma classe de conjuntos, ditos hoje "borelianos", os quais se podem definir a partir dos conjuntos abertos. Uma parte de um espaço topológico E é chamada boreliana se pertence à tribo formada pelos abertos de E.

Essas noções deram origem a vários trabalhos de classificação dos conjuntos de pontos, permitindo ao matemático Lebesgue a construção de sua célebre teoria da integração. Além disso, induziram Lebesgue e Borel ao estabelecimento de um axioma e de um teorema, ambos de importantes consequências para o progresso da topologia.

A atividade científica de Borel foi considerável. Sua vasta produção bibliográfica compreende mais de trezentas publicações.
 

Enciclopédia Mirador Internacional