Iteration final - PROBLEM_DESCRIPTION
Sequence: 5
Timestamp: 2025-07-25 22:32:05

Prompt:
You are a business analyst creating structured optimization problem documentation.

DATA SOURCES EXPLANATION:
- FINAL OR ANALYSIS: Final converged optimization problem from alternating process (iteration 1), contains business context and schema mapping evaluation
- DATABASE SCHEMA: Current database structure after iterative adjustments  
- DATA DICTIONARY: Business meanings and optimization roles of tables and columns
- CURRENT STORED VALUES: Realistic business data generated by triple expert (business + data + optimization)
- BUSINESS CONFIGURATION: Scalar parameters and business logic formulas separated from table data

CRITICAL REQUIREMENTS: 
- Ensure problem description naturally leads to LINEAR or MIXED-INTEGER optimization formulation
- Make business context consistent with the intended decision variables and objectives
- Align constraint descriptions with expected mathematical constraints
- Ensure data descriptions map clearly to expected coefficient sources
- Maintain business authenticity while fixing mathematical consistency issues
- Avoid business scenarios that would naturally require nonlinear relationships (variable products, divisions, etc.)

AUTO-EXTRACTED CONTEXT REQUIREMENTS:
- Business decisions match expected decision variables: x1, x2, x3, x4, x5, x6 (binary variables indicating participation in each event)
- Operational parameters align with expected linear objective: maximize ∑(Floor_Exercise_Points * x1 + Pommel_Horse_Points * x2 + Rings_Points * x3 + Vault_Points * x4 + Parallel_Bars_Points * x5 + Horizontal_Bar_Points * x6)
- Business configuration includes: Maximum number of events a gymnast can participate in (used for Constraint bound in optimization model), Maximum number of gymnasts on the team (used for Constraint bound in optimization model)
- Use natural language to precisely describe linear mathematical relationships
- NO mathematical formulas, equations, or symbolic notation
- Present data as current operational information
- Focus on precise operational decision-making that leads to linear formulations
- Resource limitations match expected linear constraints
- Avoid scenarios requiring variable products, divisions, or other nonlinear relationships
- Include specific operational parameters that map to expected coefficient sources
- Reference business configuration parameters where appropriate

FINAL OR ANALYSIS:
{
  "database_id": "gymnast",
  "iteration": 1,
  "business_context": "A gymnastics competition requires selecting a team of gymnasts to maximize the total points scored across all events, while ensuring that each gymnast does not exceed a maximum number of events they can participate in and the total number of gymnasts on the team does not exceed a specified limit.",
  "optimization_problem_description": "The goal is to maximize the total points scored by the team across all events, subject to constraints on the number of events each gymnast can participate in and the total number of gymnasts on the team.",
  "optimization_formulation": {
    "objective": "maximize \u2211(Floor_Exercise_Points * x1 + Pommel_Horse_Points * x2 + Rings_Points * x3 + Vault_Points * x4 + Parallel_Bars_Points * x5 + Horizontal_Bar_Points * x6)",
    "decision_variables": "x1, x2, x3, x4, x5, x6 (binary variables indicating participation in each event)",
    "constraints": "x1 + x2 + x3 + x4 + x5 + x6 \u2264 max_events_per_gymnast (for each gymnast), \u2211(x1 + x2 + x3 + x4 + x5 + x6) \u2264 max_gymnasts_on_team"
  },
  "current_optimization_to_schema_mapping": {
    "objective_coefficients": {
      "Floor_Exercise_Points": {
        "currently_mapped_to": "gymnast.Floor_Exercise_Points",
        "mapping_adequacy": "good",
        "description": "Coefficient for floor exercise participation in the objective function"
      },
      "Pommel_Horse_Points": {
        "currently_mapped_to": "gymnast.Pommel_Horse_Points",
        "mapping_adequacy": "good",
        "description": "Coefficient for pommel horse participation in the objective function"
      },
      "Rings_Points": {
        "currently_mapped_to": "gymnast.Rings_Points",
        "mapping_adequacy": "good",
        "description": "Coefficient for rings participation in the objective function"
      },
      "Vault_Points": {
        "currently_mapped_to": "gymnast.Vault_Points",
        "mapping_adequacy": "good",
        "description": "Coefficient for vault participation in the objective function"
      },
      "Parallel_Bars_Points": {
        "currently_mapped_to": "gymnast.Parallel_Bars_Points",
        "mapping_adequacy": "good",
        "description": "Coefficient for parallel bars participation in the objective function"
      },
      "Horizontal_Bar_Points": {
        "currently_mapped_to": "gymnast.Horizontal_Bar_Points",
        "mapping_adequacy": "good",
        "description": "Coefficient for horizontal bar participation in the objective function"
      }
    },
    "constraint_bounds": {
      "max_events_per_gymnast": {
        "currently_mapped_to": "team_constraints.max_events_per_gymnast",
        "mapping_adequacy": "good",
        "description": "Maximum number of events a gymnast can participate in"
      },
      "max_gymnasts_on_team": {
        "currently_mapped_to": "team_constraints.max_gymnasts_on_team",
        "mapping_adequacy": "good",
        "description": "Maximum number of gymnasts on the team"
      }
    },
    "decision_variables": {
      "x1": {
        "currently_mapped_to": "gymnast_event_participation.floor_exercise",
        "mapping_adequacy": "good",
        "description": "Decision variable for floor exercise participation",
        "variable_type": "binary"
      },
      "x2": {
        "currently_mapped_to": "gymnast_event_participation.pommel_horse",
        "mapping_adequacy": "good",
        "description": "Decision variable for pommel horse participation",
        "variable_type": "binary"
      },
      "x3": {
        "currently_mapped_to": "gymnast_event_participation.rings",
        "mapping_adequacy": "good",
        "description": "Decision variable for rings participation",
        "variable_type": "binary"
      },
      "x4": {
        "currently_mapped_to": "gymnast_event_participation.vault",
        "mapping_adequacy": "good",
        "description": "Decision variable for vault participation",
        "variable_type": "binary"
      },
      "x5": {
        "currently_mapped_to": "gymnast_event_participation.parallel_bars",
        "mapping_adequacy": "good",
        "description": "Decision variable for parallel bars participation",
        "variable_type": "binary"
      },
      "x6": {
        "currently_mapped_to": "gymnast_event_participation.horizontal_bar",
        "mapping_adequacy": "good",
        "description": "Decision variable for horizontal bar participation",
        "variable_type": "binary"
      }
    }
  },
  "missing_optimization_requirements": [],
  "iteration_status": {
    "complete": true,
    "confidence": "high",
    "next_focus": "Ready for convergence"
  }
}

FINAL DATABASE SCHEMA:
```sql
-- Iteration 1 Database Schema
-- Objective: Schema changes include creating tables for decision variables and constraint bounds, and updating business configuration logic to handle scalar parameters and formulas.

CREATE TABLE gymnast (
  Floor_Exercise_Points FLOAT,
  Pommel_Horse_Points FLOAT,
  Rings_Points FLOAT,
  Vault_Points FLOAT,
  Parallel_Bars_Points FLOAT,
  Horizontal_Bar_Points FLOAT
);

CREATE TABLE gymnast_event_participation (
  floor_exercise BOOLEAN,
  pommel_horse BOOLEAN,
  rings BOOLEAN,
  vault BOOLEAN,
  parallel_bars BOOLEAN,
  horizontal_bar BOOLEAN
);

CREATE TABLE team_constraints (
  max_events_per_gymnast INTEGER,
  max_gymnasts_on_team INTEGER
);


```

CURRENT STORED VALUES:
```sql
-- Iteration 1 Realistic Data
-- Generated by triple expert (business + data + optimization)
-- Values were determined based on typical gymnastics competition scoring ranges, realistic team sizes, and event participation limits. The data ensures diversity in gymnast performance across events while respecting constraints.

-- Realistic data for gymnast
INSERT INTO gymnast (Floor_Exercise_Points, Pommel_Horse_Points, Rings_Points, Vault_Points, Parallel_Bars_Points, Horizontal_Bar_Points) VALUES (9.5, 8.7, 9.0, 9.2, 8.9, 9.1);
INSERT INTO gymnast (Floor_Exercise_Points, Pommel_Horse_Points, Rings_Points, Vault_Points, Parallel_Bars_Points, Horizontal_Bar_Points) VALUES (8.8, 9.3, 8.7, 8.9, 9.0, 8.6);
INSERT INTO gymnast (Floor_Exercise_Points, Pommel_Horse_Points, Rings_Points, Vault_Points, Parallel_Bars_Points, Horizontal_Bar_Points) VALUES (9.0, 8.5, 9.2, 9.1, 8.8, 9.3);

-- Realistic data for gymnast_event_participation
INSERT INTO gymnast_event_participation (floor_exercise, pommel_horse, rings, vault, parallel_bars, horizontal_bar) VALUES (True, False, True, False, True, False);
INSERT INTO gymnast_event_participation (floor_exercise, pommel_horse, rings, vault, parallel_bars, horizontal_bar) VALUES (False, True, False, True, True, False);
INSERT INTO gymnast_event_participation (floor_exercise, pommel_horse, rings, vault, parallel_bars, horizontal_bar) VALUES (True, False, True, True, False, True);

-- Realistic data for team_constraints
INSERT INTO team_constraints (max_events_per_gymnast, max_gymnasts_on_team) VALUES (3, 10);


```

DATA DICTIONARY:
{
  "tables": {
    "gymnast": {
      "business_purpose": "Stores gymnast performance data across events",
      "optimization_role": "objective_coefficients",
      "columns": {
        "Floor_Exercise_Points": {
          "data_type": "FLOAT",
          "business_meaning": "Points scored by a gymnast in the floor exercise",
          "optimization_purpose": "Coefficient in objective function",
          "sample_values": "9.5"
        },
        "Pommel_Horse_Points": {
          "data_type": "FLOAT",
          "business_meaning": "Points scored by a gymnast in the pommel horse event",
          "optimization_purpose": "Coefficient in objective function",
          "sample_values": "8.7"
        },
        "Rings_Points": {
          "data_type": "FLOAT",
          "business_meaning": "Points scored by a gymnast in the rings event",
          "optimization_purpose": "Coefficient in objective function",
          "sample_values": "9.0"
        },
        "Vault_Points": {
          "data_type": "FLOAT",
          "business_meaning": "Points scored by a gymnast in the vault event",
          "optimization_purpose": "Coefficient in objective function",
          "sample_values": "9.2"
        },
        "Parallel_Bars_Points": {
          "data_type": "FLOAT",
          "business_meaning": "Points scored by a gymnast in the parallel bars event",
          "optimization_purpose": "Coefficient in objective function",
          "sample_values": "8.9"
        },
        "Horizontal_Bar_Points": {
          "data_type": "FLOAT",
          "business_meaning": "Points scored by a gymnast in the horizontal bar event",
          "optimization_purpose": "Coefficient in objective function",
          "sample_values": "9.1"
        }
      }
    },
    "gymnast_event_participation": {
      "business_purpose": "Binary decision variables for event participation",
      "optimization_role": "decision_variables",
      "columns": {
        "floor_exercise": {
          "data_type": "BOOLEAN",
          "business_meaning": "Whether the gymnast participates in the floor exercise",
          "optimization_purpose": "Decision variable x1",
          "sample_values": "true"
        },
        "pommel_horse": {
          "data_type": "BOOLEAN",
          "business_meaning": "Whether the gymnast participates in the pommel horse event",
          "optimization_purpose": "Decision variable x2",
          "sample_values": "false"
        },
        "rings": {
          "data_type": "BOOLEAN",
          "business_meaning": "Whether the gymnast participates in the rings event",
          "optimization_purpose": "Decision variable x3",
          "sample_values": "true"
        },
        "vault": {
          "data_type": "BOOLEAN",
          "business_meaning": "Whether the gymnast participates in the vault event",
          "optimization_purpose": "Decision variable x4",
          "sample_values": "false"
        },
        "parallel_bars": {
          "data_type": "BOOLEAN",
          "business_meaning": "Whether the gymnast participates in the parallel bars event",
          "optimization_purpose": "Decision variable x5",
          "sample_values": "true"
        },
        "horizontal_bar": {
          "data_type": "BOOLEAN",
          "business_meaning": "Whether the gymnast participates in the horizontal bar event",
          "optimization_purpose": "Decision variable x6",
          "sample_values": "false"
        }
      }
    },
    "team_constraints": {
      "business_purpose": "Constraints on the number of events per gymnast and the total number of gymnasts on the team",
      "optimization_role": "constraint_bounds",
      "columns": {
        "max_events_per_gymnast": {
          "data_type": "INTEGER",
          "business_meaning": "Maximum number of events a gymnast can participate in",
          "optimization_purpose": "Constraint bound",
          "sample_values": "3"
        },
        "max_gymnasts_on_team": {
          "data_type": "INTEGER",
          "business_meaning": "Maximum number of gymnasts on the team",
          "optimization_purpose": "Constraint bound",
          "sample_values": "10"
        }
      }
    }
  }
}


BUSINESS CONFIGURATION:

BUSINESS CONFIGURATION:
{
  "max_events_per_gymnast": {
    "data_type": "INTEGER",
    "business_meaning": "Maximum number of events a gymnast can participate in",
    "optimization_role": "Constraint bound in optimization model",
    "configuration_type": "scalar_parameter",
    "value": 3,
    "business_justification": "Limiting each gymnast to 3 events ensures they can perform at their best without overexertion."
  },
  "max_gymnasts_on_team": {
    "data_type": "INTEGER",
    "business_meaning": "Maximum number of gymnasts on the team",
    "optimization_role": "Constraint bound in optimization model",
    "configuration_type": "scalar_parameter",
    "value": 10,
    "business_justification": "A team size of 10 is practical for competition management while allowing for a diverse skill set."
  }
}

Business Configuration Design: 
Our system separates business logic design from value determination:
- Configuration Logic (business_configuration_logic.json): Templates designed by data engineers with sample_value for scalars and actual formulas for business logic
- Configuration Values (business_configuration.json): Realistic values determined by domain experts for scalar parameters only
- Design Rationale: Ensures business logic consistency while allowing flexible parameter tuning


TASK: Create structured markdown documentation for SECTIONS 1-3 ONLY (Problem Description).

EXACT MARKDOWN STRUCTURE TO FOLLOW:

# Complete Optimization Problem and Solution: gymnast

## 1. Problem Context and Goals

### Context  
[Regenerate business context that naturally aligns with LINEAR optimization formulation. Ensure:]
- Business decisions match expected decision variables: x1, x2, x3, x4, x5, x6 (binary variables indicating participation in each event)
- Operational parameters align with expected linear objective: maximize ∑(Floor_Exercise_Points * x1 + Pommel_Horse_Points * x2 + Rings_Points * x3 + Vault_Points * x4 + Parallel_Bars_Points * x5 + Horizontal_Bar_Points * x6)
- Business configuration includes: Maximum number of events a gymnast can participate in (used for Constraint bound in optimization model), Maximum number of gymnasts on the team (used for Constraint bound in optimization model)
- Use natural language to precisely describe linear mathematical relationships
- NO mathematical formulas, equations, or symbolic notation
- Present data as current operational information
- Focus on precise operational decision-making that leads to linear formulations
- Resource limitations match expected linear constraints
- Avoid scenarios requiring variable products, divisions, or other nonlinear relationships
- Include specific operational parameters that map to expected coefficient sources
- Reference business configuration parameters where appropriate
- CRITICAL: Include ALL business configuration information (scalar parameters AND business logic formulas) in natural business language

### Goals  
[Regenerate goals that clearly lead to LINEAR mathematical objective:]
- Optimization goal: maximize
- Metric to optimize: maximize ∑(Floor_Exercise_Points * x1 + Pommel_Horse_Points * x2 + Rings_Points * x3 + Vault_Points * x4 + Parallel_Bars_Points * x5 + Horizontal_Bar_Points * x6)
- Success measurement aligned with expected coefficient sources
- Use natural language to precisely describe linear optimization goal
- NO mathematical formulas, equations, or symbolic notation

## 2. Constraints    

[Regenerate constraints that directly match expected LINEAR mathematical constraints:]
- Expected constraint: x1 + x2 + x3 + x4 + x5 + x6 ≤ max_events_per_gymnast (for each gymnast), ∑(x1 + x2 + x3 + x4 + x5 + x6) ≤ max_gymnasts_on_team (Form: Standard constraint form based on business requirements)

[Each constraint should be described in business terms that naturally lead to LINEAR mathematical forms (no variable products or divisions)]

## 3. Available Data  

### Database Schema  
```sql
-- Iteration 1 Database Schema
-- Objective: Schema changes include creating tables for decision variables and constraint bounds, and updating business configuration logic to handle scalar parameters and formulas.

CREATE TABLE gymnast (
  Floor_Exercise_Points FLOAT,
  Pommel_Horse_Points FLOAT,
  Rings_Points FLOAT,
  Vault_Points FLOAT,
  Parallel_Bars_Points FLOAT,
  Horizontal_Bar_Points FLOAT
);

CREATE TABLE gymnast_event_participation (
  floor_exercise BOOLEAN,
  pommel_horse BOOLEAN,
  rings BOOLEAN,
  vault BOOLEAN,
  parallel_bars BOOLEAN,
  horizontal_bar BOOLEAN
);

CREATE TABLE team_constraints (
  max_events_per_gymnast INTEGER,
  max_gymnasts_on_team INTEGER
);


```

### Data Dictionary  
[Create comprehensive business-oriented data dictionary mapping tables and columns to their business purposes and optimization roles - NOT technical database terms. Base this on the data_dictionary provided but rewrite in business language that clearly connects to the expected linear mathematical formulation]

### Current Stored Values  
```sql
-- Iteration 1 Realistic Data
-- Generated by triple expert (business + data + optimization)
-- Values were determined based on typical gymnastics competition scoring ranges, realistic team sizes, and event participation limits. The data ensures diversity in gymnast performance across events while respecting constraints.

-- Realistic data for gymnast
INSERT INTO gymnast (Floor_Exercise_Points, Pommel_Horse_Points, Rings_Points, Vault_Points, Parallel_Bars_Points, Horizontal_Bar_Points) VALUES (9.5, 8.7, 9.0, 9.2, 8.9, 9.1);
INSERT INTO gymnast (Floor_Exercise_Points, Pommel_Horse_Points, Rings_Points, Vault_Points, Parallel_Bars_Points, Horizontal_Bar_Points) VALUES (8.8, 9.3, 8.7, 8.9, 9.0, 8.6);
INSERT INTO gymnast (Floor_Exercise_Points, Pommel_Horse_Points, Rings_Points, Vault_Points, Parallel_Bars_Points, Horizontal_Bar_Points) VALUES (9.0, 8.5, 9.2, 9.1, 8.8, 9.3);

-- Realistic data for gymnast_event_participation
INSERT INTO gymnast_event_participation (floor_exercise, pommel_horse, rings, vault, parallel_bars, horizontal_bar) VALUES (True, False, True, False, True, False);
INSERT INTO gymnast_event_participation (floor_exercise, pommel_horse, rings, vault, parallel_bars, horizontal_bar) VALUES (False, True, False, True, True, False);
INSERT INTO gymnast_event_participation (floor_exercise, pommel_horse, rings, vault, parallel_bars, horizontal_bar) VALUES (True, False, True, True, False, True);

-- Realistic data for team_constraints
INSERT INTO team_constraints (max_events_per_gymnast, max_gymnasts_on_team) VALUES (3, 10);


```

STOP HERE - Do not include section 4 (Mathematical Optimization Formulation).

Response:
# Complete Optimization Problem and Solution: gymnast

## 1. Problem Context and Goals

### Context  
In a gymnastics competition, the goal is to select a team of gymnasts that maximizes the total points scored across all events. Each gymnast has a specific performance score for each event, which represents their potential contribution to the team’s total score. The decision-making process involves determining which gymnasts should participate in which events, based on their performance scores.  

The operational parameters include:  
- **Performance Scores**: Each gymnast has a score for the floor exercise, pommel horse, rings, vault, parallel bars, and horizontal bar. These scores are used to calculate the total points the team can achieve.  
- **Event Participation**: Each gymnast can participate in a maximum of 3 events, as defined by the business configuration. This ensures that gymnasts are not overburdened and can perform at their best.  
- **Team Size**: The total number of gymnasts on the team cannot exceed 10, as specified in the business configuration. This limit ensures the team is manageable and diverse in skill sets.  

The decision variables are binary choices indicating whether a gymnast participates in a specific event. The objective is to maximize the total points scored by the team across all events, while adhering to the constraints on event participation and team size.  

### Goals  
The primary goal of this optimization problem is to maximize the total points scored by the gymnastics team across all events. This is achieved by strategically selecting which gymnasts participate in which events, based on their performance scores. Success is measured by the total points accumulated, which is the sum of the points contributed by each gymnast in the events they participate in.  

The optimization process ensures that the team’s total score is as high as possible, while respecting the operational constraints of event participation limits and team size.  

## 2. Constraints  

The optimization problem is subject to the following constraints:  
1. **Event Participation Limit**: Each gymnast can participate in a maximum of 3 events. This ensures that no gymnast is overcommitted and can perform optimally in the events they are assigned.  
2. **Team Size Limit**: The total number of gymnasts on the team cannot exceed 10. This ensures the team remains manageable and diverse in skill sets.  

These constraints are designed to align with the operational realities of the competition and ensure the optimization solution is both practical and effective.  

## 3. Available Data  

### Database Schema  
```sql
-- Iteration 1 Database Schema
-- Objective: Schema changes include creating tables for decision variables and constraint bounds, and updating business configuration logic to handle scalar parameters and formulas.

CREATE TABLE gymnast (
  Floor_Exercise_Points FLOAT,
  Pommel_Horse_Points FLOAT,
  Rings_Points FLOAT,
  Vault_Points FLOAT,
  Parallel_Bars_Points FLOAT,
  Horizontal_Bar_Points FLOAT
);

CREATE TABLE gymnast_event_participation (
  floor_exercise BOOLEAN,
  pommel_horse BOOLEAN,
  rings BOOLEAN,
  vault BOOLEAN,
  parallel_bars BOOLEAN,
  horizontal_bar BOOLEAN
);

CREATE TABLE team_constraints (
  max_events_per_gymnast INTEGER,
  max_gymnasts_on_team INTEGER
);
```

### Data Dictionary  
- **gymnast**: Stores the performance scores of each gymnast across all events. These scores are used as coefficients in the objective function to calculate the total points.  
  - **Floor_Exercise_Points**: Points scored by a gymnast in the floor exercise.  
  - **Pommel_Horse_Points**: Points scored by a gymnast in the pommel horse event.  
  - **Rings_Points**: Points scored by a gymnast in the rings event.  
  - **Vault_Points**: Points scored by a gymnast in the vault event.  
  - **Parallel_Bars_Points**: Points scored by a gymnast in the parallel bars event.  
  - **Horizontal_Bar_Points**: Points scored by a gymnast in the horizontal bar event.  

- **gymnast_event_participation**: Represents the decision variables for event participation. Each column indicates whether a gymnast participates in a specific event.  
  - **floor_exercise**: Whether the gymnast participates in the floor exercise.  
  - **pommel_horse**: Whether the gymnast participates in the pommel horse event.  
  - **rings**: Whether the gymnast participates in the rings event.  
  - **vault**: Whether the gymnast participates in the vault event.  
  - **parallel_bars**: Whether the gymnast participates in the parallel bars event.  
  - **horizontal_bar**: Whether the gymnast participates in the horizontal bar event.  

- **team_constraints**: Stores the operational constraints for the team.  
  - **max_events_per_gymnast**: The maximum number of events a gymnast can participate in.  
  - **max_gymnasts_on_team**: The maximum number of gymnasts allowed on the team.  

### Current Stored Values  
```sql
-- Iteration 1 Realistic Data
-- Generated by triple expert (business + data + optimization)
-- Values were determined based on typical gymnastics competition scoring ranges, realistic team sizes, and event participation limits. The data ensures diversity in gymnast performance across events while respecting constraints.

-- Realistic data for gymnast
INSERT INTO gymnast (Floor_Exercise_Points, Pommel_Horse_Points, Rings_Points, Vault_Points, Parallel_Bars_Points, Horizontal_Bar_Points) VALUES (9.5, 8.7, 9.0, 9.2, 8.9, 9.1);
INSERT INTO gymnast (Floor_Exercise_Points, Pommel_Horse_Points, Rings_Points, Vault_Points, Parallel_Bars_Points, Horizontal_Bar_Points) VALUES (8.8, 9.3, 8.7, 8.9, 9.0, 8.6);
INSERT INTO gymnast (Floor_Exercise_Points, Pommel_Horse_Points, Rings_Points, Vault_Points, Parallel_Bars_Points, Horizontal_Bar_Points) VALUES (9.0, 8.5, 9.2, 9.1, 8.8, 9.3);

-- Realistic data for gymnast_event_participation
INSERT INTO gymnast_event_participation (floor_exercise, pommel_horse, rings, vault, parallel_bars, horizontal_bar) VALUES (True, False, True, False, True, False);
INSERT INTO gymnast_event_participation (floor_exercise, pommel_horse, rings, vault, parallel_bars, horizontal_bar) VALUES (False, True, False, True, True, False);
INSERT INTO gymnast_event_participation (floor_exercise, pommel_horse, rings, vault, parallel_bars, horizontal_bar) VALUES (True, False, True, True, False, True);

-- Realistic data for team_constraints
INSERT INTO team_constraints (max_events_per_gymnast, max_gymnasts_on_team) VALUES (3, 10);
```
