Algorithme pour construire une fonction non continue bijective


  • J

    Bonjour,

    connaissez vous dans la literrature des fonctions bjectives par exemple de [0;1] dans [0;1] et continues nulle part, et construites à partir d'algorithmes itératifs, ce en partant d'une fonction continue (par exemple x -> x) ?

    Je pense à une division de plus en plus fine de l'intervalle [0;1] à chaque itération de l'algorithme.

    La fonction cherchée serait alors le resultat de l'algorithme après un nombre infini d'itérations.

    Par exemple, il y a beaucoup de choses sur l'escalier du diable, sauf que cette courbe est continue partout mais dérivable nulle part.

    J'ai vraiment rien trouvé du tout dans la littérature sur ce problème, pourtant c'est sûr que c'est possible de construire de telles fonctions.


  • J

    J'avais pensé à (int (10n(10^n(10n x))/10nx))/10^nx))/10n quand n tend vers +inf/ , avec int -> partie entière. Je ne sais pas comment générer une discontinuité autrement... Voilà !


  • J

    j-gadget
    J'avais pensé à (int (10n(10^n(10n x))/10nx))/10^nx))/10n quand n tend vers +inf/ , avec int -> partie entière. Je ne sais pas comment générer une discontinuité autrement... Voilà !

    Oui mais ça ne définit pas une fonction lorsque n tend vers l'infini.

    Beaucoup plus grave que cela : pour un n fixé, la fonction ainsi définie n'est pas du tout bijective !

    Si vous avez d'autres idées...


  • Thierry
    Modérateurs

    Bonjour,
    jreeman
    continues nulle partUn intervalle quelconque pouvant toujours être décomposé en une réunion d'intervalles plus petits, une telle fonction ne peut exister.

    Si ?


  • kanial
    Modérateurs

    Salut jreeman,

    La fonction f :
    $f(x)= \left{ {x \text{ si }x \in , {\mathbb {q}} \ 1-x \text{ si }x \notin , {\mathbb {q}}} \right$
    est bijective de [0,1] dans [0,1] et ne m'a pas l'air souvent continue, excepté en 1/2. Ca ne répond pas parfaitement à ce que tu demandes mais ça peut peut-être donner des idées (?).


  • J

    Oui c'est bien cela le principe attendu.

    Une fonction correcte est la suivante :

    x rationnel dans [0; 1/2] --> 1/2+x
    x rationnel dans ]1/2; 1] --> 1-x

    et l'identité pour x irrationnel.

    Par contre, je ne vois aucun autre moyen que de se baser sur la distinction entre rationnel et irrationnel. Si vous, vous voyez d'autres solutions, je suis preneur.
    Ca ou même des arguments prouvant que d'autres fonctions peuvent exister.


  • Thierry
    Modérateurs

    jreeman

    Une fonction correcte est la suivante :

    x rationnel dans [0; 1/2] --> 1/2+x
    x rationnel dans ]1/2; 1] --> 1-x

    et l'identité pour x irrationnel.
    Je pense toutefois que cette fonction présente des intervalles de continuité ...


  • kanial
    Modérateurs

    J'ai une idée mais je sais pas du tout si ça va marcher, je vais essayer de l'exprimer clairement, on verra après...

    Pour la première itération, on va définir la fonction f0f_0f0 telle que :
    ∗f0*f_0f0(x)=x sur [0, 1/3[=I0,11/3[=I_{0, 1}1/3[=I0,1
    ∗f0*f_0f0(x)=4/3-x sur [1/3, 2/3[=I0,22/3[=I_{0, 2}2/3[=I0,2
    ∗f0*f_0f0(x)=x-1/3 sur [2/3, 1]=I0,31]=I_{0, 3}1]=I0,3

    Puis pour fnf_nfn, on prendra la fonction telle que :
    ∗f*ffn(x)=f</em>n−1(x)=f</em>{n-1}(x)=f</em>n1(x/3) sur In−1,1I_{n-1, 1}In1,1 (ce qui définit les intervalles In,1I_{n, 1}In,1, In,2I_{n, 2}In,2, In,3I_{n, 3}In,3).
    ∗f*ffn(x)=f(x)=f(x)=f{n-1}(x/3−1/3(x/3-1/3(x/31/3^{n+1})+f)+f)+f{n-1}(1/3n(1/3^n(1/3n) sur I</em>n−1,2I</em>{n-1, 2}I</em>n1,2 (...)
    .
    .
    .
    ∗f*ffn(x)=f(x)=f(x)=f{n-1}(x/3−(k−1)/3(x/3-(k-1)/3(x/3(k1)/3^{n+1})+f)+f)+f{n-1}((k−1)/3n((k-1)/3^n((k1)/3n) sur I</em>n−1,kI</em>{n-1, k}I</em>n1,k (...)
    .
    .
    .
    ∗f*ffn(x)=f(x)=f(x)=f{n-1}(x/3−(3(x/3-(3(x/3(3^n−1)/3-1)/31)/3^{n+1})+f)+f)+f{n-1}((3((3((3^n−1)/3n-1)/3^n1)/3n) sur I</em>n−1,3nI</em>{n-1, 3n}I</em>n1,3n (...)

    Voilà, en espérant ne pas m'être trompé dans mes indexations :rolling_eyes: , je te laisse vérifier que la limite de fnf_nfn quand n tend vers l'infini correspond bien à ce que tu cherches (je ne vois pas de raison pour que ça ne marche pas, mais on sait jamais...)


  • kanial
    Modérateurs

    Réponse pour Thierry :

    Non je ne pense pas qu'elle possède d'intervalle de continuité, en effet si tu prends un x quelconque de [0,1] et un ε>0, tu sais que dans l'intervalle ]x-ε, x+ε[, il existe un x0x_0x0 rationnel et un y0y_0y0 irrationnel (par densité de mathbbQmathbb{Q}mathbbQ et de mathbbRmathbb{R}mathbbRmathbbQmathbb{Q}mathbbQ dans mathbbRmathbb{R}mathbbR), puis dans l'intervalle ]x-ε/n, x+ε/n[ il existe un xnx_nxn rationnel et un yny_nyn irrationnel (idem). Tu créés ainsi deux suites convergentes vers x, avec lim f(xnf(x_nf(xn)=1/2+x ou 1-x selon la position de x et lim f(ynf(y_nf(yn)=x.
    soit lim f(xnf(x_nf(xn)≠lim f(ynf(y_nf(yn) avec lim yny_nyn=lim xnx_nxn=x
    ce qui montre que f n'est pas continue en x, et ce pour tout x de [0,1]


  • J

    Thierry
    jreeman

    Une fonction correcte est la suivante :

    x rationnel dans [0; 1/2] --> 1/2+x
    x rationnel dans ]1/2; 1] --> 1-x

    et l'identité pour x irrationnel.
    Je pense toutefois que cette fonction présente des intervalles de continuité ...

    Non, puisqu'il n'y pas de point fixe sur les rationnels, tu as donc automatiquement la discontinuité assurée (mais raycage a donné une explication plus "mathématique").


  • J

    raycage
    J'ai une idée mais je sais pas du tout si ça va marcher, je vais essayer de l'exprimer clairement, on verra après...

    Pour la première itération, on va définir la fonction f0f_0f0 telle que :
    ∗f0*f_0f0(x)=x sur [0, 1/3[=I0,11/3[=I_{0, 1}1/3[=I0,1
    ∗f0*f_0f0(x)=4/3-x sur [1/3, 2/3[=I0,22/3[=I_{0, 2}2/3[=I0,2
    ∗f0*f_0f0(x)=x-1/3 sur [2/3, 1]=I0,31]=I_{0, 3}1]=I0,3

    Puis pour fnf_nfn, on prendra la fonction telle que :
    ∗f*ffn(x)=f</em>n−1(x)=f</em>{n-1}(x)=f</em>n1(x/3) sur In−1,1I_{n-1, 1}In1,1 (ce qui définit les intervalles In,1I_{n, 1}In,1, In,2I_{n, 2}In,2, In,3I_{n, 3}In,3).
    ∗f*ffn(x)=f(x)=f(x)=f{n-1}(x/3−1/3(x/3-1/3(x/31/3^{n+1})+f)+f)+f{n-1}(1/3n(1/3^n(1/3n) sur I</em>n−1,2I</em>{n-1, 2}I</em>n1,2 (...)
    .
    .
    .
    ∗f*ffn(x)=f(x)=f(x)=f{n-1}(x/3−(k−1)/3(x/3-(k-1)/3(x/3(k1)/3^{n+1})+f)+f)+f{n-1}((k−1)/3n((k-1)/3^n((k1)/3n) sur I</em>n−1,kI</em>{n-1, k}I</em>n1,k (...)
    .
    .
    .
    ∗f*ffn(x)=f(x)=f(x)=f{n-1}(x/3−(3(x/3-(3(x/3(3^n−1)/3-1)/31)/3^{n+1})+f)+f)+f{n-1}((3((3((3^n−1)/3n-1)/3^n1)/3n) sur I</em>n−1,3nI</em>{n-1, 3n}I</em>n1,3n (...)

    Voilà, en espérant ne pas m'être trompé dans mes indexations :rolling_eyes: , je te laisse vérifier que la limite de fnf_nfn quand n tend vers l'infini correspond bien à ce que tu cherches (je ne vois pas de raison pour que ça ne marche pas, mais on sait jamais...)

    Ouep ca devrait marcher, je pense aussi ;). Je crois qu'au bout du compte on se retrouve avec une droite ou des segments de droite qui ressemble à quelque chose de continue mais qui ne l'est pas.

    PS : la suite logique et qui me semble impossible serait un algorithme qui aboutisse a une fonction vérifiant : ∀ε>0 et ∀x0x_0x0 ∈ [0, 1], ∃x,y ∈ [x0-ε, x0+ε] tel que max(f(x))-min(f(y))=1. Là si quelqu'un trouve, vraiment il sera très très.... très fort.


  • kanial
    Modérateurs

    Ton PS n'est pas très clair, ton max et ton min ne seraient-ils pas plutôt un sup et un inf ? Et sur quel intervalle ? Sur [x0-ε, x0+ε] sans doute (?).

    Juste pour savoir, tu es en quelle classe / quel niveau jreeman ?


  • J

    raycage
    Ton PS n'est pas très clair, ton max et ton min ne seraient-ils pas plutôt un sup et un inf ? Et sur quel intervalle ? Sur [x0-ε, x0+ε] sans doute (?).

    Juste pour savoir, tu es en quelle classe / quel niveau jreeman ?

    Oui effectivement c'est un max et un min.

    Sinon je concois que mes posts soient inhabituels et donc surprennent un peu d'où votre question sur ma classe en mon niveau, certainement. En fait j'ai pas vraiment de niveau, je suis juste informaticien et fait un petit peu de math durant mes études il y a maintenant une dizaine d'année ;).


Se connecter pour répondre