Fixed problem with a missing extension on a community contribution
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"# YOUR FIRST LAB\n",
|
||||
"## Please read this. This is super-critical to get you prepared; there's no fluff here!\n",
|
||||
"### Please read this section. This is valuable to get you prepared, even if it's a long read -- it's important stuff.\n",
|
||||
"\n",
|
||||
"## Your first Frontier LLM Project\n",
|
||||
"\n",
|
||||
@@ -27,7 +27,6 @@
|
||||
"## If you're new to the Command Line\n",
|
||||
"\n",
|
||||
"Please see these excellent guides: [Command line on PC](https://chatgpt.com/share/67b0acea-ba38-8012-9c34-7a2541052665) and [Command line on Mac](https://chatgpt.com/canvas/shared/67b0b10c93a081918210723867525d2b). \n",
|
||||
"Linux people, something tells me you could teach _me_ a thing or two about the command line!\n",
|
||||
"\n",
|
||||
"## If you'd prefer to work in IDEs\n",
|
||||
"\n",
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 55,
|
||||
"execution_count": null,
|
||||
"id": "ef5572ea-29ca-4eb4-bf84-2b86ff489c88",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
@@ -20,18 +20,10 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 84,
|
||||
"execution_count": null,
|
||||
"id": "38ae1ba0-d4b3-41c5-aca1-759d1c597749",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"OpenAI API Key exists and begins sk-proj-\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"# Initialization\n",
|
||||
"\n",
|
||||
@@ -49,7 +41,7 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 87,
|
||||
"execution_count": null,
|
||||
"id": "a07e7793-b8f5-44f4-aded-5562f633271a",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
@@ -256,148 +248,10 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 88,
|
||||
"execution_count": null,
|
||||
"id": "1120131d-48f1-4fdc-8950-70312b8228df",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"=== Génération du code Python pour tester la preuve... ===\n",
|
||||
"\n",
|
||||
"=== Code généré (nettoyé) : ===\n",
|
||||
"import numpy as np\n",
|
||||
"import matplotlib.pyplot as plt\n",
|
||||
"import os\n",
|
||||
"\n",
|
||||
"# Create output directory if it doesn't exist\n",
|
||||
"output_dir = 'generated_outputs'\n",
|
||||
"os.makedirs(output_dir, exist_ok=True)\n",
|
||||
"\n",
|
||||
"# Parameters for the IFS\n",
|
||||
"rho = 0.5 # Contraction factor\n",
|
||||
"k = 3 # Number of transformations\n",
|
||||
"\n",
|
||||
"# Define the affine transformations\n",
|
||||
"def phi_1(x):\n",
|
||||
" return rho * x + np.array([0, 0])\n",
|
||||
"\n",
|
||||
"def phi_2(x):\n",
|
||||
" return rho * x + np.array([0.5, 0])\n",
|
||||
"\n",
|
||||
"def phi_3(x):\n",
|
||||
" return rho * x + np.array([0.25, np.sqrt(3)/4])\n",
|
||||
"\n",
|
||||
"# List of transformations\n",
|
||||
"transformations = [phi_1, phi_2, phi_3]\n",
|
||||
"\n",
|
||||
"# Generate the fractal using Iterated Function System (IFS)\n",
|
||||
"def generate_fractal(n_points=10000):\n",
|
||||
" points = np.zeros((n_points, 2))\n",
|
||||
" x = np.array([0.0, 0.0]) # Initial point\n",
|
||||
"\n",
|
||||
" for i in range(n_points):\n",
|
||||
" # Randomly choose one of the transformations\n",
|
||||
" transformation = np.random.choice(transformations)\n",
|
||||
" # Apply the transformation\n",
|
||||
" x = transformation(x)\n",
|
||||
" # Store the point\n",
|
||||
" points[i] = x\n",
|
||||
"\n",
|
||||
" return points\n",
|
||||
"\n",
|
||||
"# Generate the fractal points\n",
|
||||
"points = generate_fractal()\n",
|
||||
"\n",
|
||||
"# Plot the fractal\n",
|
||||
"plt.figure(figsize=(8, 8))\n",
|
||||
"plt.scatter(points[:, 0], points[:, 1], s=0.1, color='black')\n",
|
||||
"plt.title('Fractal Generated by IFS')\n",
|
||||
"plt.axis('equal')\n",
|
||||
"plt.axis('off')\n",
|
||||
"\n",
|
||||
"# Save the plot\n",
|
||||
"plt.savefig(os.path.join(output_dir, 'fractal_cosmohedron.png'), dpi=300)\n",
|
||||
"plt.show()\n",
|
||||
"\n",
|
||||
"# Calculate the Hausdorff dimension using the scaling rule\n",
|
||||
"def calculate_hausdorff_dimension(rho, k):\n",
|
||||
" return np.log(k) / np.log(1/rho)\n",
|
||||
"\n",
|
||||
"hausdorff_dimension = calculate_hausdorff_dimension(rho, k)\n",
|
||||
"print(f\"Estimated Hausdorff Dimension: {hausdorff_dimension:.4f}\")\n",
|
||||
"\n",
|
||||
"=== Exécution du code généré... ===\n",
|
||||
"\n",
|
||||
"=== Sortie standard (stdout) : ===\n",
|
||||
"Figure(800x800)\n",
|
||||
"Estimated Hausdorff Dimension: 1.5850\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"=== Interprétation des résultats (streaming en Markdown) ===\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"text/markdown": [
|
||||
"# Analyse de la Simulation et de la Preuve de Fractalité\n",
|
||||
"\n",
|
||||
"## Contexte de la Preuve\n",
|
||||
"\n",
|
||||
"La preuve initiale propose une approche formelle pour construire un objet « cosmohedron-like » et démontrer qu'il possède des propriétés fractales. Elle s'appuie sur la construction d'une suite de polytopes qui tend vers un ensemble fractal, en utilisant des concepts de self-similarité et de dimension de Hausdorff.\n",
|
||||
"\n",
|
||||
"## Analyse du Code de Simulation\n",
|
||||
"\n",
|
||||
"### Description du Code\n",
|
||||
"\n",
|
||||
"Le code simule un système de fonctions itérées (IFS) pour générer un fractal. Les paramètres principaux sont :\n",
|
||||
"\n",
|
||||
"- **Facteur de contraction (rho)** : 0.5\n",
|
||||
"- **Nombre de transformations (k)** : 3\n",
|
||||
"\n",
|
||||
"Les transformations affines définies sont :\n",
|
||||
"\n",
|
||||
"1. \\( \\phi_1(x) = 0.5 \\times x + [0, 0] \\)\n",
|
||||
"2. \\( \\phi_2(x) = 0.5 \\times x + [0.5, 0] \\)\n",
|
||||
"3. \\( \\phi_3(x) = 0.5 \\times x + [0.25, \\sqrt{3}/4] \\)\n",
|
||||
"\n",
|
||||
"Ces transformations sont utilisées pour générer un ensemble de points qui forment le fractal.\n",
|
||||
"\n",
|
||||
"### Résultats de la Simulation\n",
|
||||
"\n",
|
||||
"- **Fractal généré** : Le code produit une figure qui ressemble à un triangle de Sierpinski, un exemple classique de fractal.\n",
|
||||
"- **Dimension de Hausdorff estimée** : 1.5850, calculée à partir de la formule \\(\\frac{\\log(k)}{\\log(1/\\rho)}\\).\n",
|
||||
"\n",
|
||||
"## Cohérence avec la Preuve\n",
|
||||
"\n",
|
||||
"### Concordance avec la Théorie\n",
|
||||
"\n",
|
||||
"1. **Self-similarité** : Le code utilise des transformations contractantes, ce qui est en accord avec l'hypothèse de self-similarité asymptotique de la preuve.\n",
|
||||
" \n",
|
||||
"2. **Dimension de Hausdorff** : La dimension calculée (1.5850) n'est pas un entier, ce qui confirme le caractère fractal de l'objet généré, en ligne avec les critères de fractalité de la preuve.\n",
|
||||
"\n",
|
||||
"3. **Système de Fonctions Itérées (IFS)** : Le code implémente un IFS, ce qui est central dans la démonstration théorique de la fractalité.\n",
|
||||
"\n",
|
||||
"### Limites et Considérations\n",
|
||||
"\n",
|
||||
"- **Modèle Simplifié** : Le code simule un modèle simplifié (triangle de Sierpinski) qui illustre bien les concepts théoriques, mais ne capture pas toute la complexité potentielle des « vrais » cosmohedra.\n",
|
||||
"- **Hypothèses de la Preuve** : Les hypothèses (H1, H2, H3) sont respectées dans le cadre de cette simulation, mais leur vérification dans un contexte plus complexe reste à explorer.\n",
|
||||
"\n",
|
||||
"## Conclusion\n",
|
||||
"\n",
|
||||
"La simulation est cohérente avec la preuve théorique de la fractalité. Elle illustre efficacement les concepts de self-similarité et de dimension de Hausdorff non entière. Cependant, pour appliquer cette approche à des cosmohedra réels, des travaux supplémentaires seraient nécessaires pour adapter le modèle aux contraintes physiques et géométriques spécifiques.\n",
|
||||
"\n",
|
||||
"En résumé, le code et les résultats soutiennent l'argument théorique que la limite de la suite de polytopes est un ensemble fractal, démontrant ainsi une structure fractale sous-jacente dans ce modèle « cosmohedron-like »."
|
||||
],
|
||||
"text/plain": [
|
||||
"<IPython.core.display.Markdown object>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"mon_texte_de_preuve = \"\"\"\n",
|
||||
"Ci-dessous, je propose une ébauche (relativement détaillée) d’une approche formelle pour construire un objet « cosmohedron-like » et démontrer (ou du moins argumenter rigoureusement) qu’il possède des propriétés fractales dans une limite bien définie. Attention : dans l’état actuel des recherches, la littérature ne fournit pas (à ma connaissance) de démonstration largement reconnue établissant qu’un « vrai » cosmohedron est strictement fractal. Ce que je vais donc présenter est un modèle mathématisé inspiré des idées de cosmohedra et de leur possible fractalité, en détaillant :\n",
|
||||
Reference in New Issue
Block a user